sonatype / nexus-public

Sonatype Nexus Repository Open-source codebase mirror
https://www.sonatype.com/products/repository-oss-download
Eclipse Public License 1.0
1.84k stars 557 forks source link

Unable to download maven snapshot if dependency version declared as range[0.20.0-SNAPSHOT, 0.21.0-SNAPSHOT) in pom.xml #154

Open Vigneshcode-ops opened 1 year ago

Vigneshcode-ops commented 1 year ago

Hi,

This is Vignesh

we have artifacts in JFrog planning to migrate to nexus as first phase have installed nexus open source version nexus-3.54.1-01 configured proxy repository for maven which is pointing to JFrog facing below issues.

when we try to pull snapshot from nexus, which is having dependency and the versions declared as range [0.20.0-SNAPSHOT, 0.21.0-SNAPSHOT) in pom.xml

Example pom.xml:

<parent>
    <groupId>com.inin</groupId>
    <artifactId>data</artifactId>
    <version>0.21.0-SNAPSHOT</version>
</parent>

<artifactId>some-common</artifactId>
<version>0.62.0-SNAPSHOT</version>

<properties>
    <some-data-common.version>[0.31.0-SNAPSHOT,0.32.0-SNAPSHOT)</some-data-common.version>
    <some-common.version>3.0.0-SNAPSHOT</some-common.version>
</properties>

<dependencies>
    <dependency>
        <groupId>com.inin</groupId>
        <artifactId>some-data-common</artifactId>
        <version>${some-data-common.version}</version>
    </dependency>
</dependencies>

Error:

_Failed to collect dependencies at com.inin:some-common:jar:0.62.0-SNAPSHOT -> com.inin:some-data-common:jar:[0.31.0-SNAPSHOT,0.32.0-SNAPSHOT): No versions available for com.inin:some-data-common:jar:[0.31.0-SNAPSHOT,0.32.0-SNAPSHOT) within specified range -> [Help 1]_

Enabled debug mode for http.client and outbound connection in nexus to trace proxy request and then found the error occuring when nexus try to do PUT request to upload metadata file to nexus repository and getting the path mismatch please find the debug log below

2023-05-26 08:07:59,333+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.httpclient.outbound - https://jfrog/maven-mirror/com/inin/some-data-common/maven-metadata.xml < HTTP/1.1 200 @ 1.391 s 2023-05-26 08:07:59,333+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.maven.internal.orient.MavenProxyFacet - Status: HTTP/1.1 200 2023-05-26 08:07:59,334+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.maven.internal.orient.MavenProxyFacet - Entity: ResponseEntityProxy{[Content-Type: application/xml,Content-Length: 1726,Chunked: false]} 2023-05-26 08:07:59,334+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.maven.internal.orient.MavenFacetImpl - **PUT maven-cache : com/inin/some-data-common/maven-metadata.xml** 2023-05-26 08:07:59,335+0000 DEBUG [qtp1305362650-2801] admin org.apache.http.impl.conn.DefaultManagedHttpClientConnection - http-outgoing-59: set socket timeout to 0 2023-05-26 08:07:59,335+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.maven.internal.orient.MavenFacetImpl - **Validating maven-metadata.xml before storing** 2023-05-26 08:07:59,336+0000 DEBUG [qtp1305362650-2801] admin **org.sonatype.nexus.repository.maven.internal.validation.MavenMetadataContentValidator - maven-metadata.xml contains a SNAPSHOT version (0.31.0-SNAPSHOT) therefore the version is expected to be part of the path** 2023-05-26 08:07:59,336+0000 WARN [qtp1305362650-2801] admin **org.sonatype.nexus.repository.maven.internal.validation.MavenMetadataContentValidator - maven-metadata.xml path com/inin/some-data-common/maven-metadata.xml does not match the expected path com/inin/some-data-common/0.31.0-SNAPSHOT/maven-metadata.xml** 2023-05-26 08:07:59,336+0000 WARN [qtp1305362650-2801] admin org.sonatype.nexus.repository.maven.internal.orient.MavenFacetImpl - ** /** 2023-05-26 08:07:59,337+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.maven.internal.orient.MavenFacetImpl - GET maven-cache : com/inin/some-data-common/maven-metadata.xml 2023-05-26 08:07:59,337+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.storage.StorageTxImpl - Transitioning: OPEN -> ACTIVE 2023-05-26 08:07:59,337+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.storage.StorageTxImpl - Transitioned: ACTIVE 2023-05-26 08:07:59,338+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.storage.StorageTxImpl - Transitioning: ACTIVE -> OPEN 2023-05-26 08:07:59,338+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.storage.StorageTxImpl - Transitioned: OPEN 2023-05-26 08:07:59,338+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.storage.StorageTxImpl - Transitioning: OPEN -> CLOSED 2023-05-26 08:07:59,339+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.storage.StorageTxImpl - Transitioned: CLOSED 2023-05-26 08:07:59,339+0000 WARN [qtp1305362650-2801] admin org.sonatype.nexus.repository.view.handlers.ExceptionHandler - Invalid content: GET /com/inin/some-data-common/maven-metadata.xml: org.sonatype.nexus.repository.InvalidContentException: Invalid maven-metadata.xml GAV com.inin, some-data-common, 0.31.0-SNAPSHOT does not match request path com/inin/some-data-common/maven-metadata.xml 2023-05-26 08:07:59,339+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.view.Router - Response: Response{status=Status{successful=false, code=404, message='Invalid maven-metadata.xml GAV com.inin, some-data-common, 0.31.0-SNAPSHOT does not match request path com/inin/some-data-common/maven-metadata.xml'}, payload=null} 2023-05-26 08:07:59,340+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.httpbridge.internal.ViewServlet - Request: Request{action='GET', path='/com/inin/some-data-common/maven-metadata.xml', parameters=null, payload=HttpRequestPayloadAdapter{contentType='null', size=-1}, multipart=false} 2023-05-26 08:07:59,340+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.httpbridge.internal.DefaultHttpResponseSender - Sending response: Response{status=Status{successful=false, code=404, message='Invalid maven-metadata.xml GAV com.inin, some-data-common, 0.31.0-SNAPSHOT does not match request path com/inin/some-data-common/maven-metadata.xml'}, payload=null} 2023-05-26 08:07:59,340+0000 DEBUG [qtp1305362650-2801] admin org.sonatype.nexus.repository.httpbridge.internal.ViewServlet - Service completed

This is preventing us from migration.

Thanks

abrashp commented 1 year ago

Thanks for filing. We've reviewed this request and are monitoring demand.

github-actions[bot] commented 1 month ago

This issue is stale because it has been open for 60 days with no activity.