web-dev-qa-db-ja.com

JenkinsでMavenプロジェクトを構成しているときに例外を取得する

Jenkinを使用して正常なビルドをトリガーできません。

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

MavenのJavaで1つの単純なプロジェクトを作成しました。これを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
13
sougata das

メッセージエラーCaused by: Java.lang.NoSuchFieldError: DEFAULT_USER_SETTINGS_FILEの後に問題があります JENKINS-43446Jenkins Mavenプラグイン で修正、 バージョン2.16(2017年6月8日) .

そのチケットには次のコメントが含まれています。

[ビルド]セクションの[詳細]部分で、ユーザーとグローバル設定ファイルの両方を指定するだけでした。これらの設定のいずれかをデフォルト構成のままにすると、これらのエラーが発生します。

mirabilos in コメント で指摘されているように、 Wouter Canswer で詳しく説明されています:

私の解決策は、ビルド構成の変更を設定することでした:

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も。
8
VonC

JenkinsでMavenのバージョン3.3.9を使用してみてください。

バグを参照してください https://issues.jenkins-ci.org/browse/JENKINS-43446

3
user3297199

Jenkinsバージョン2.60.3があります。 Maven 3.5.0を使用したかったのですが、正確なエラーが表示されました。

私の解決策は、Maven Integration Pluginを3.1.2にアップグレードすることでした。

0