无法使用Jenkin触发成功构建。
Jenkin Version : 2.46.1
Maven Version :3.5.0
Java version : jdk1.7.0_67
我在Maven上用java创建了一个简单的项目。现在,当我将它与Jenkin集成并立即点击构建时。
构建失败并出现异常。
java.lang.reflect.InvocationTargetException
我附上了日志详细信息。
日志明细:
Started by user sougata das Building in workspace C:\Users\sougatadas\workspace\TestNGTutorial Parsing POMs Established TCP socket on 50831 [TestNGTutorial] $ "C:\Program Files\Java\jdk1.7.0_67/bin/java" -cp "C:\Users\sougatadas\.jenkins\plugins\maven-plugin\WEB-INF\lib\maven33-agent-1.8.1.jar;F:\apache-maven-3.5.0-bin\apache-maven-3.5.0\boot\plexus-classworlds-2.5.2.jar;F:\apache-maven-3.5.0-bin\apache-maven-3.5.0/conf/logging" jenkins.maven3.agent.Maven33Main
F:\apache-maven-3.5.0-bin\apache-maven-3.5.0 "C:\Users\sougata
das\.jenkins\war\WEB-INF\lib\remoting-3.7.jar" "C:\Users\sougata
das\.jenkins\plugins\maven-plugin\WEB-INF\lib\maven33-interceptor-1.8.1.jar"
"C:\Users\sougata
das\.jenkins\plugins\maven-plugin\WEB-INF\lib\maven3-interceptor-commons-1.8.1.jar"
50831 <===[JENKINS REMOTING CAPACITY]===>channel started Executing
Maven: -B -f C:\Users\sougata das\workspace\TestNGTutorial\pom.xml
install java.lang.reflect.InvocationTargetException at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606) at
org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:330)
at
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:238)
at jenkins.maven3.agent.Maven33Main.launch(Maven33Main.java:176)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606) at
hudson.maven.Maven3Builder.call(Maven3Builder.java:139) at
hudson.maven.Maven3Builder.call(Maven3Builder.java:70) at
hudson.remoting.UserRequest.perform(UserRequest.java:153) at
hudson.remoting.UserRequest.perform(UserRequest.java:50) at
hudson.remoting.Request$2.run(Request.java:336) at
hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
at java.util.concurrent.FutureTask.run(FutureTask.java:262) at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745) Caused by:
java.lang.NoSuchFieldError: DEFAULT_USER_SETTINGS_FILE at
org.apache.maven.cli.DefaultMavenExecutionRequestBuilder.settings(DefaultMavenExecutionRequestBuilder.java:658)
at
org.apache.maven.cli.DefaultMavenExecutionRequestBuilder.getMavenExecutionRequest(DefaultMavenExecutionRequestBuilder.java:149)
at
org.jvnet.hudson.maven3.launcher.Maven33Launcher.getMavenExecutionRequest(Maven33Launcher.java:150)
at
org.jvnet.hudson.maven3.launcher.Maven33Launcher.main(Maven33Launcher.java:127)
... 21 more ERROR: Failed to parse POMs java.io.IOException:
java.lang.reflect.InvocationTargetException at
hudson.maven.Maven3Builder.call(Maven3Builder.java:179) at
hudson.maven.Maven3Builder.call(Maven3Builder.java:70) at
hudson.remoting.UserRequest.perform(UserRequest.java:153) at
hudson.remoting.UserRequest.perform(UserRequest.java:50) at
hudson.remoting.Request$2.run(Request.java:336) at
hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
at java.util.concurrent.FutureTask.run(FutureTask.java:262) at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745) at ......remote call to
Channel to Maven [C:\Program Files\Java\jdk1.7.0_67/bin/java, -cp,
C:\Users\sougata
das\.jenkins\plugins\maven-plugin\WEB-INF\lib\maven33-agent-1.8.1.jar;F:\apache-maven-3.5.0-bin\apache-maven-3.5.0\boot\plexus-classworlds-2.5.2.jar;F:\apache-maven-3.5.0-bin\apache-maven-3.5.0/conf/logging, jenkins.maven3.agent.Maven33Main,
F:\apache-maven-3.5.0-bin\apache-maven-3.5.0, C:\Users\sougata
das\.jenkins\war\WEB-INF\lib\remoting-3.7.jar, C:\Users\sougata
das\.jenkins\plugins\maven-plugin\WEB-INF\lib\maven33-interceptor-1.8.1.jar,
C:\Users\sougata
das\.jenkins\plugins\maven-plugin\WEB-INF\lib\maven3-interceptor-commons-1.8.1.jar,
50831](Native Method) at
hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1545)
at hudson.remoting.UserResponse.retrieve(UserRequest.java:253) at
hudson.remoting.Channel.call(Channel.java:830) at
hudson.maven.ProcessCache$MavenProcess.call(ProcessCache.java:161)
at
hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:873)
at
hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:534)
at hudson.model.Run.execute(Run.java:1728) at
hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:544)
at
hudson.model.ResourceController.execute(ResourceController.java:98)
at hudson.model.Executor.run(Executor.java:405) Caused by:
java.lang.reflect.InvocationTargetException at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606) at
hudson.maven.Maven3Builder.call(Maven3Builder.java:139) at
hudson.maven.Maven3Builder.call(Maven3Builder.java:70) at
hudson.remoting.UserRequest.perform(UserRequest.java:153) at
hudson.remoting.UserRequest.perform(UserRequest.java:50) at
hudson.remoting.Request$2.run(Request.java:336) at
hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
at java.util.concurrent.FutureTask.run(FutureTask.java:262) at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745) Caused by:
java.lang.Exception: java.lang.reflect.InvocationTargetException at
jenkins.maven3.agent.Maven33Main.launch(Maven33Main.java:179) ...
14 more Caused by: java.lang.reflect.InvocationTargetException at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606) at
org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:330)
at
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:238)
at jenkins.maven3.agent.Maven33Main.launch(Maven33Main.java:176)
... 14 more Caused by: java.lang.NoSuchFieldError:
DEFAULT_USER_SETTINGS_FILE at
org.apache.maven.cli.DefaultMavenExecutionRequestBuilder.settings(DefaultMavenExecutionRequestBuilder.java:658)
at
org.apache.maven.cli.DefaultMavenExecutionRequestBuilder.getMavenExecutionRequest(DefaultMavenExecutionRequestBuilder.java:149)
at
org.jvnet.hudson.maven3.launcher.Maven33Launcher.getMavenExecutionRequest(Maven33Launcher.java:150)
at
org.jvnet.hudson.maven3.launcher.Maven33Launcher.main(Maven33Launcher.java:127)
... 21 more channel stopped Finished: FAILURE
答案 0 :(得分:7)
邮件错误Caused by: java.lang.NoSuchFieldError: DEFAULT_USER_SETTINGS_FILE
之后是问题JENKINS-43446,已修复为Jenkins Maven plugin,Version 2.16 (June 08, 2017)。
该票证包括以下评论:
我必须在&#34; Advanced&#34;中指定用户和全局设置文件。 &#34; Build&#34;的一部分部分。如果我将这些设置中的任何一个保留为默认配置,我会收到这些错误。
正如mirabilos中the comments所指出,Wouter C answer详述
我的解决方案是将更改设置为构建配置:
在
Configure > Build > Advanced
:
- 将
Settings file
设置为Settings file in filesystem
,然后输入设置文件的路径。就我而言:/root/.m2/settings.xml
- 将
Global Settings file
设置为Global settings file on filesystem
,然后输入全局设置文件的路径 我没有(我认为)所以我只是将它设置为/root/.m2/settings.xml
。
答案 1 :(得分:3)
尝试在Jenkins上使用Maven 3.3.9版本。
答案 2 :(得分:0)
我有Jenkins版本2.60.3。我想使用Maven 3.5.0并得到确切的错误。
我的解决方案是将Maven Integration Plugin升级到3.1.2。