2016-10-13 12 views
1

Google 프록시 환경에서 다른 Nexus를 구성한 Sonatype Nexus가 Google 환경에서 실행되고 있습니다. 우리가 의존성을 소비 할 때 넥서스에 물어 봅니다. 어제까지 우리 프로젝트에 새로운 의존성을 추가 할 때까지 제대로 작동했습니다.Maven SNAPSHOT 버전이 Nexus에서로드되지 않았습니다.

Maven이 배포 된 스냅 샷 버전을 제대로 해결하지 못하는 것 같습니다. 받는다는에서 나는 그것이 받는다는-metadata.xml을 다운로드하는 것을 볼 수 있습니다 로그인하지만 우리의 바이너리를 포함하는 zip 파일을 다운로드하려고 할 때, 현재의 스냅 샷 버전으로 -snapshot를 대체하지 않습니다

> mvn -f My.Product.dependencies.xml process-resources -DConfiguration=AnyConfig -U -X 

[DEBUG] Could not find metadata com.company.team:My.New.Dependency:2.2-SNAPSHOT/maven-metadata.xml in local (d:\Maven\repositories) 
[DEBUG] Using connector WagonRepositoryConnector with priority 0 for http://buildserver:8082/nexus/content/groups/company 
Downloading: http://buildserver:8082/nexus/content/groups/company/com/company/team/My.New.Dependency/2.2-SNAPSHOT/maven-metadata.xml 
Downloaded: http://buildserver:8082/nexus/content/groups/company/com/company/team/My.New.Dependency/2.2-SNAPSHOT/maven-metadata.xml (850 B at 13.2 KB/sec) 
[DEBUG] Reading resolution tracking file d:\Maven\repositories\com\company\team\My.New.Dependency\2.2-SNAPSHOT\resolver-status.properties 
[DEBUG] Writing resolution tracking file d:\Maven\repositories\com\company\team\My.New.Dependency\2.2-SNAPSHOT\resolver-status.properties 
[DEBUG] Could not find metadata com.company.team:My.New.Dependency:2.2-SNAPSHOT/maven-metadata.xml in local (d:\Maven\repositories) 
[DEBUG] Using connector WagonRepositoryConnector with priority 0 for http://buildserver:8082/nexus/content/groups/company 
Downloading: http://buildserver:8082/nexus/content/groups/company/com/company/team/My.New.Dependency/2.2-SNAPSHOT/maven-metadata.xml 
Downloaded: http://buildserver:8082/nexus/content/groups/company/com/company/team/My.New.Dependency/2.2-SNAPSHOT/maven-metadata.xml (850 B at 55.3 KB/sec) 
[DEBUG] Reading resolution tracking file d:\Maven\repositories\com\company\team\My.New.Dependency\2.2-SNAPSHOT\resolver-status.properties 
[DEBUG] Writing resolution tracking file d:\Maven\repositories\com\company\team\My.New.Dependency\2.2-SNAPSHOT\resolver-status.properties 
... 
Downloading: http://buildserver:8082/nexus/content/groups/company/com/company/team/My.New.Dependency/2.2-SNAPSHOT/My.New.Dependency-2.2-SNAPSHOT-vs2010-40-AnyCpu-Release.zip 
[DEBUG] Reading resolution tracking file d:\Maven\repositories\com\company\team\My.New.Dependency\2.2-SNAPSHOT\My.New.Dependency-2.2-SNAPSHOT-vs2010-40-AnyCpu-Release.zip.lastUpdated 
[DEBUG] Writing resolution tracking file d:\Maven\repositories\com\company\team\My.New.Dependency\2.2-SNAPSHOT\My.New.Dependency-2.2-SNAPSHOT-vs2010-40-AnyCpu-Release.zip.lastUpdated 
[INFO] ------------------------------------------------------------------------ 
... 
[INFO] ------------------------------------------------------------------------ 
[INFO] Reactor Summary: 
[INFO] 
[INFO] My.Client.App FAILURE [1.922s] 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD FAILURE 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 3.687s 
[INFO] Finished at: Thu Oct 13 09:54:24 CEST 2016 
[INFO] Final Memory: 9M/177M 
[INFO] ------------------------------------------------------------------------ 
[ERROR] Failed to execute goal on project My.Client.App: Could not resolve dependencies for project com.company.team2:My.Client.App:pom:7.0-SNAPSHOT: The following artifacts could not be resolved: com.company.team:My.New.Dependency:zip:vs2010-40-AnyCpu-Release:2.2-SNAPSHOT: Could not find artifact com.company.team:My.New.Dependency:zip:vs2010-40-AnyCpu-Release:2.2-SNAPSHOT in company (http://buildserver:8082/nexus/content/groups/company) -> [Help 1] 

<?xml version="1.0" encoding="UTF-8"?> 
<metadata modelVersion="1.1.0"> 
    <groupId>com.company.team</groupId> 
    <artifactId>My.New.Dependency</artifactId> 
    <version>2.2-SNAPSHOT</version> 
    <versioning> 
    <snapshot> 
     <timestamp>20161011.235855</timestamp> 
     <buildNumber>102</buildNumber> 
    </snapshot> 
    <lastUpdated>20161011235855</lastUpdated> 
    <snapshotVersions> 
     <snapshotVersion> 
     <extension>pom</extension> 
     <value>2.2-20161011.235855-102</value> 
     <updated>20161011235855</updated> 
     </snapshotVersion> 
     <snapshotVersion> 
     <classifier>vs2010-40-AnyCPU-Release</classifier> 
     <extension>zip</extension> 
     <value>2.2-20161011.235855-102</value> 
     <updated>20161011235855</updated> 
     </snapshotVersion> 
    </snapshotVersions> 
    </versioning> 
</metadata> 

나는 그것을에서 물건을 다운로드 폴더의 디렉토리 목록을 확인하면, 2.2-20161011.235855-102 버전이 제대로있다 : 받는다는-metadata.xml 제대로 스냅 샷 버전 정보를 포함

Nexus Directory Listing

동일한 저장소의 다른 모든 종속 항목은 완벽하게 작동하지만 새로 도입 된 항목은 다운로드되지 않습니다. 현재 Maven이 -SNAPSHOT을 다른 모든 종속성과 마찬가지로 실제 스냅 샷 버전 번호로 대체하지 않는다는 사실이 나를 미치게합니다. 또한 Nexus UI에서 '만료 캐시'및 '업데이트 색인'옵션을 시도했지만 도움이되지 않았습니다. Maven이 실제 버전 번호에서 -SNAPSHOT으로 되돌아 갈 수있는 원인은 무엇입니까? 또한 이것을 설명하는 로그 항목이 없습니다.

답변

2

1 백만 가지를 시도하고 다른 종속성의 구성을 새로운 것과 비교하면 마침내 문제가 발견되었습니다. 이슈 (분류 자)는 대소 문자를 구분합니다. 내 클라이언트 POM 파일에서 나는 vs2010-40-AnyCpu-Release을 가리키고 있었지만 배치는 vs2010-40-AnyCPU-Release입니다 (대문자 AnyC PU에 주목하십시오).

로그 파일에서 AnyCpu가 소문자 인 파일을 다운로드하려고하는 것을 볼 수 있습니다. 대문자로 바꾼 후에도 효과가있었습니다.

+0

Maven Central의 거의 모든 아티팩트가 소문자 인 이유는 다음과 같습니다. –

0

당신은 당신의 로컬 저장소에있는 파일

My.New.Dependency-2.2-SNAPSHOT-vs2010-40-AnyCpu-Release.zip.lastUpdated 

있습니다. 삭제 해보십시오. Maven이 다운로드를 다시 시도하는 것을 차단할 수 있습니다.

+0

파일을 삭제하고 명령을 다시 실행했지만 여전히 동일한 오류가 발생합니다. – Danielku15

+0

파일이 다시 만들어 졌습니까? 이상한 동작이 발생하면 전체 로컬 저장소를 지우는 것이 좋습니다. –

+0

예, 파일이 재생성됩니다. 또한 다소 깨끗한 다른 개발자의 컴퓨터를 확인했습니다. 또한 같은 오류로 실패합니다. – Danielku15