Jenkins와 빌드 할 때마다 maven이 내 프로젝트의 종속성을 다운로드하려고 시도하는 것 같습니다. 몇 가지 문제가 있습니다. 첫 번째 문제는이 작업을 전혀해서는 안되며, 다른 문제는 올바른 Repo에서 다운로드하려고 시도하지 않는다는 것입니다. 즉, 모든 사람이 시간 초과 될 때까지 기다려야한다는 것입니다.Maven 어셈블리 플러그인 jenkins의 의존 관계 재 구현
mvn clean 패키지를 직접 실행할 수 있으며 모든 종속 항목이 로컬 .m2 저장소에 있으므로 ~ 4 초 만에 빌드됩니다. Jenkins는 로컬에 설치되어 있으며이 Maven Repo를 공유하므로 다른 방식으로 동작하는 이유를 알 수 없습니다. 젠킨스가 -B 플래그와 -f 플래그를 사용하여 maven 명령을 실행하고 패키지 대신 설치를 사용하고있는 것처럼 보입니다. 그러나 내가 직접 할 때도 몇 초 만에 Jenkins가 모든 시간 초과로 약 8 분이 걸리는 반면 그것은 기다려야한다.
Slick2d 및 lwjgl 라이브러리에 태그를 붙였습니다. 공개 메이븐 레포에 없기 때문에 그들과 관련이 있다고 생각하기 때문에 직접 repo를 pom에 추가해야합니다.
빌드가 완료되고 성공한다는 사실에 주목할 가치가 있습니다. 유일한 차이점은 Jenkins가 시간 제한에 8 분을 보내고 몇 초 만에 발생한다는 것입니다.
또한 원래 이것을 알아 내려고 할 때 수동으로 시도했을 때도 발생했습니다. Maven Natives Repository를 추가 한 후에이 작업을 중단했는데 같은 로컬 repo를 공유하면서 Jenkins가 여전히 시간을 들여야하는 이유를 알지 못합니다.
업데이트 : 무슨 일이 벌어지고 있는지 알아 내려고 시도한 후 그것이 내 pom에서 그 부분을 가져 가면 그것은 잘 작동하기 때문에 maven 어셈블리 플러그인과 관련된 것으로 좁혔습니다. 여기
내 치어 파일의 관련 부분입니다 :<repositories>
<repository>
<id>slick</id>
<name>slick</name>
<url>http://slick.cokeandcode.com/mavenrepo</url>
</repository>
<repository>
<id>mavenNatives</id>
<name>Maven Natives Repository</name>
<url>http://mavennatives.googlecode.com/svn/repo</url>
</repository>
<repository>
<id>nolat.org</id>
<name>Nolat</name>
<url>https://raw.github.com/Talon876/repo/master/releases</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
</dependency>
<dependency>
<groupId>org.nolat</groupId>
<artifactId>toolkit</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>org.lwjgl.lwjgl</groupId>
<artifactId>lwjgl</artifactId>
<version>2.8.3</version>
</dependency>
<dependency>
<groupId>slick</groupId>
<artifactId>slick</artifactId>
<version>274</version>
</dependency>
</dependencies>
<build>
<plugins>
[...]
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.3</version>
<executions>
<execution>
<id>jar-with-dependencies</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>${main}</mainClass>
<addClasspath>true</addClasspath>
</manifest>
</archive>
<appendAssemblyId>false</appendAssemblyId>
</configuration>
</execution>
<execution>
<id>dist</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>src/META-INF/dist.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
을 그리고 여기 젠킨스 콘솔 (가 포기하고 계속하기 전에 잠시 앉아 어디에서 다운로드 라인의 각이다)의 관련 부분입니다 : 안정적인 메이븐를 얻을 수
[JENKINS] Recording test results
mojoStarted org.apache.maven.plugins:maven-jar-plugin:2.3.2(default-jar)
[INFO]
[INFO] --- maven-jar-plugin:2.3.2:jar (default-jar) @ Falldown ---
mojoSucceeded org.apache.maven.plugins:maven-jar-plugin:2.3.2(default-jar)
mojoStarted org.apache.maven.plugins:maven-assembly-plugin:2.3(jar-with-dependencies)
[INFO]
[INFO] --- maven-assembly-plugin:2.3:single (jar-with-dependencies) @ Falldown ---
Downloading: http://slick.cokeandcode.com/mavenrepo/phys2d/phys2d/060408/phys2d- 060408.pom
Downloading: http://mavennatives.googlecode.com/svn/repo/phys2d/phys2d/060408/phys2d-060408.pom
Downloading: https://raw.github.com/Talon876/repo/master/releases/phys2d/phys2d/060408/phys2d-060408.pom
Downloading: http://repo.maven.apache.org/maven2/phys2d/phys2d/060408/phys2d-060408.pom
Downloading: http://slick.cokeandcode.com/mavenrepo/org/lwjgl/lwjgl/2.1.0/lwjgl-2.1.0.pom
Downloading: http://mavennatives.googlecode.com/svn/repo/org/lwjgl/lwjgl/2.1.0/lwjgl- 2.1.0.pom
Downloading: https://raw.github.com/Talon876/repo/master/releases/org/lwjgl/lwjgl/2.1.0/lwjgl-2.1.0.pom
Downloading: http://repo.maven.apache.org/maven2/org/lwjgl/lwjgl/2.1.0/lwjgl-2.1.0.pom
Downloading: http://slick.cokeandcode.com/mavenrepo/org/lwjgl/lwjgl-jinput/2.1.0/lwjgl-jinput-2.1.0.pom
Downloading: http://mavennatives.googlecode.com/svn/repo/org/lwjgl/lwjgl- jinput/2.1.0/lwjgl-jinput-2.1.0.pom
Downloading: https://raw.github.com/Talon876/repo/master/releases/org/lwjgl/lwjgl- jinput/2.1.0/lwjgl-jinput-2.1.0.pom
Downloading: http://repo.maven.apache.org/maven2/org/lwjgl/lwjgl-jinput/2.1.0/lwjgl-jinput-2.1.0.pom
Downloading: http://slick.cokeandcode.com/mavenrepo/org/lwjgl/lwjgl-native/2.1.0/lwjgl-native-2.1.0.pom
Downloading: http://mavennatives.googlecode.com/svn/repo/org/lwjgl/lwjgl-native/2.1.0/lwjgl-native-2.1.0.pom
Downloading: https://raw.github.com/Talon876/repo/master/releases/org/lwjgl/lwjgl-native/2.1.0/lwjgl-native-2.1.0.pom
Downloading: http://repo.maven.apache.org/maven2/org/lwjgl/lwjgl-native/2.1.0/lwjgl-native-2.1.0.pom
Downloading: http://slick.cokeandcode.com/mavenrepo/javax/jnlp/jnlp/1.2/jnlp-1.2.pom
Downloading: http://mavennatives.googlecode.com/svn/repo/javax/jnlp/jnlp/1.2/jnlp-1.2.pom
Downloading: https://raw.github.com/Talon876/repo/master/releases/javax/jnlp/jnlp/1.2/jnlp-1.2.pom
Downloading: http://repo.maven.apache.org/maven2/javax/jnlp/jnlp/1.2/jnlp-1.2.pom
Downloading: http://slick.cokeandcode.com/mavenrepo/ibxm/ibxm/unknown/ibxm-unknown.pom
Downloading: http://mavennatives.googlecode.com/svn/repo/ibxm/ibxm/unknown/ibxm-unknown.pom
Downloading: https://raw.github.com/Talon876/repo/master/releases/ibxm/ibxm/unknown/ibxm-unknown.pom
Downloading: http://repo.maven.apache.org/maven2/ibxm/ibxm/unknown/ibxm-unknown.pom
Downloading: http://slick.cokeandcode.com/mavenrepo/jcraft/jogg/0.0.7/jogg-0.0.7.pom
Downloading: http://mavennatives.googlecode.com/svn/repo/jcraft/jogg/0.0.7/jogg-0.0.7.pom
Downloading: https://raw.github.com/Talon876/repo/master/releases/jcraft/jogg/0.0.7/jogg-0.0.7.pom
Downloading: http://repo.maven.apache.org/maven2/jcraft/jogg/0.0.7/jogg-0.0.7.pom
Downloading: http://slick.cokeandcode.com/mavenrepo/jcraft/jorbis/0.0.15/jorbis-0.0.15.pom
Downloading: http://mavennatives.googlecode.com/svn/repo/jcraft/jorbis/0.0.15/jorbis-0.0.15.pom
Downloading: https://raw.github.com/Talon876/repo/master/releases/jcraft/jorbis/0.0.15/jorbis-0.0.15.pom
Downloading: http://repo.maven.apache.org/maven2/jcraft/jorbis/0.0.15/jorbis-0.0.15.pom
[WARNING] Artifact: org.nolat:Falldown:jar:1.0-SNAPSHOT references the same file as the assembly destination file. Moving it to a temporary location for inclusion.
[INFO] META-INF/ already added, skipping
[INFO] META-INF/MANIFEST.MF already added, skipping
[INFO] org/ already added, skipping
...and so on
는 업데이트 모든 종속성을 강제하기 위해 젠킨스 구성에 대한 받는다는 매개 변수 필드에 -U을 시도 했습니까? –
'빌드'아래의 '고급'버튼을 클릭하면 MAVEN_OPTS은 무엇이며 어떤 상자가 체크되어 있습니까? –
유일한 것은 "실패한 각 모듈에 대해 전자 메일 보내기"입니다. 지금은 -U로 빌드를 시도하고 있지만 아직 오랜 시간이 걸립니다. 완성 될 때까지 기다렸다가 -U없이 다른 것을 만들고 결과와 함께 의견을 게시합니다. – Talon876