2017-04-22 121 views
8

無法使用Jenkin觸發成功構建。在jenkins中配置maven項目時出現異常

Jenkin Version : 2.46.1 
Maven Version :3.5.0 
Java version : jdk1.7.0_67 

我在Maven的Java中創建了一個簡單的項目。現在,當我將它與Jenkin集成並現在單擊構建時。
構建失敗,並獲得一些例外。

java.lang.reflect.InvocationTargetException 

我附上了日誌的詳細信息。

登錄詳細信息:使用上詹金斯一個Maven的3.3.9版本

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 

回答

4

消息錯誤Caused by: java.lang.NoSuchFieldError: DEFAULT_USER_SETTINGS_FILE後跟問題JENKINS-43446

船票包含以下注釋:

我只好簡單地指定用戶和全局設置文件在「構建」部分的「高級」部分。如果我在默認配置中保留了這些設置中的任何一個,我會得到這些錯誤。

the comments指出的mirabilos和通過的answerWouter C詳述:

我的解決辦法是設置變化的生成配置:

Configure > Build > Advanced

  • Settings file設置爲Settings file in filesystem並輸入路徑你的設置文件。在我的情況下:/root/.m2/settings.xml
  • 設置Global Settings fileGlobal settings file on filesystem並輸入您的全局設置文件的路徑。
    我沒有一個(我認爲),所以我只是將它設置爲/root/.m2/settings.xml也。
+0

另請參閱https://stackoverflow.com/a/43832242/2171120以瞭解有關如何執行此操作的更多詳細信息。 – mirabilos

+0

@mirabilos謝謝。我已經將該參考文獻包含在答案中以提高可見性。 – VonC

相關問題