이것은 귀 프로젝트의 단순한 예이며, 부모 pom은 EAR, EJB 및 Jar를 집계합니다.Jenkins and maven multi module 프로젝트에 누락 된 파일이 있습니다.
I는 Maven 프로젝트에서이 구조 SVN 저장 가지고
parent/
|- pom.xml
|- modulA/
| |- pom.xml
|- modulB/
| |- pom.xml
modulB는 모듈라
의 의존성이 pom.xml 파일을 모듈 부
<modules>
<module>modulA</module>
<module>modulB</module>
</modules>
및 종속성 관리 섹션
<dependencyManagement>
<dependencies>
<dependency>
<groupId>group</groupId>
<artifactId>modulA</artifactId>
<version>0.0.2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>group</groupId>
<artifactId>modulB</artifactId>
<version>0.0.2-SNAPSHOT</version>
</dependency>
</dependencies>
</dependencyManagement>
나는 (창)
mvn clean compile
내가 어떤 문제가 발생하지 않습니다 받는다는 2.2.1에 처음으로 컴파일 할 때 0
하위 모듈은 내 PC에 부모
<parent>
<groupId>group</groupId>
<artifactId>parent</artifactId>
<version>0.0.2-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
를 참조
하지만 .... 젠킨스는 처음으로 컴파일하려고 (메이븐 2.2.1 리눅스 레드햇)
Missing:
----------
1) modulA:jar:0.0.2-SNAPSHOT
Try downloading the file manually from the project website.
Then, install it using the command:
mvn install:install-file -DgroupId=group -DartifactId=modulA -Dversion=0.0.2- SNAPSHOT -Dpackaging=jar -Dfile=/path/to/file
Alternatively, if you host your own repository you can deploy the file there:
mvn deploy:deploy-file -DgroupId=group -DartifactId=modulA -Dversion=0.0.2-SNAPSHOT -Dpackaging=jar -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]
Path to dependency:
1) modulB:ejb:0.0.2-SNAPSHOT
2) modulA:jar:0.0.2-SNAPSHOT
----------
1 required artifacts are missing.
왜 ????????
내 PC에서 Artifactory로 프로젝트를 배포하면 Jenkins가 저장소에서 이슈를 다운로드하기 때문에 Jenkins는 문제가 없습니다. 그러나 Jenkins는 왜 저장소의 아티팩트에 의존합니까? 사전에
:(
감사
편집 : 나는 dependencyManagement 섹션은 종속성을 "정의",하지만 생각
서브 모듈은 의존성 종속성을 사용하지 않는 경우 하위 모듈에 추가되지 않았습니다. dependencyManagement 섹션을 삭제하고 Jenkins의 문제가 계속 발생합니다.
내 PC에서 작동합니다. 아웃 문제.
모듈 중 하나에 대해 효과적인 POM을 얻을 수 있습니까? 로컬에서 작동하는 경우 문제가 발생하기 전에 빌드의 일부로 로컬 저장소에 배포 된 아티팩트가 새 시스템 (예 : 빌드 시스템)에서 빌드하려고 시도 할 때까지 효과적으로 숨길 수 있습니다. – chrisbunney
상자에서 로컬 Maven 저장소를 지우는 경우 처음 빌드가 실패합니까? 나는 네가 추측하고있다. 만약 그렇다면, 빌드하기 전에 modulA-0.0.2-SNAPSHOT.jar을 참조하기 만하면된다. 부모님과 모듈 친구들을 더 보지 않고 무엇을 말하는지 말하기 어렵습니다. – BenjaminLinus