2013-06-30 3 views
10

을 따라 Gen과 Maven으로 Jenkins를 설정했습니다 (Linux CenOS를 사용하고 있기 때문에 약간 변경되었습니다). 메이븐을 실행하려고 할 때 나는 Demo Maven project from GitHubJenkins가 Maven을 실행할 수 없습니다.

젠킨스 내 설정을 테스트하기 위해 노력하고있어

예외가 발생합니다. 그래서 git-clone 프로젝트를 시도하고 Maven을 수동으로 실행하면 문제가 없습니다.

그래서 문제는 젠킨스가 메이븐을 돌리는 것입니다. 문제에 대해 Google 검색을 시도했지만 유용한 정보를 찾을 수 없습니다.

나의 현재 의혹은 다음과 같습니다

  1. 어쩌면 젠킨스는 메이븐을 실행하기위한 올바른 클래스 경로를 사용하지 않습니다. Jenkins는 Linux에서 자체 사용자 (jenkins라고 함)가 있으므로 파일을 읽을 수있는 권한이 없기 때문일 수 있습니다.
  2. 아마도 Maven이 올바르게 설치되지 않았을 수 있습니다. 젠킨스가 나를 위해 설치하는 대신 수동으로 설치했습니다.이 설정이 오프라인으로 작동해야하기 때문에.

    Started by an SCM change 
    Building in workspace /var/lib/jenkins/jobs/Omri/workspace 
    Checkout:workspace//var/lib/jenkins/jobs/Omri/workspace - [email protected] 
    Using strategy: Default 
    Last Built Revision: Revision af62f13d2374bc00a4b67f7586bfd52b7bda80eb (origin/prepare) 
    Fetching changes from 1 remote Git repository 
    Fetching upstream changes from origin 
    Seen branch in repository origin/HEAD 
    Seen branch in repository origin/master 
    Seen branch in repository origin/prepare 
    Seen 3 remote branches 
    Commencing build of Revision a9a1fc4a96d4ac4af3ca5e7e3b7393a6df4bf555 (origin/HEAD, origin/master) 
    Checking out Revision a9a1fc4a96d4ac4af3ca5e7e3b7393a6df4bf555 (origin/HEAD, origin/master) 
    No change to record in branch origin/HEAD 
    No change to record in branch origin/master 
    Parsing POMs 
    Modules changed, recalculating dependency graph 
    [workspace] $ /usr/java/jdk1.7.0_17/bin/java -cp /var/lib/jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-agent-1.3.jar:/home/jenkins/maven/boot/plexus-classworlds-2.4.2.jar org.jvnet.hudson.maven3.agent.Maven3Main /home/jenkins/maven/ /var/cache/jenkins/war/WEB-INF/lib/remoting-2.24.jar /var/lib/jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-1.3.jar 53953 
    <===[JENKINS REMOTING CAPACITY]===>���channel started 
    log4j:WARN No appenders could be found for logger (org.apache.commons.beanutils.converters.BooleanConverter). 
    log4j:WARN Please initialize the log4j system properly. 
    Executing Maven: -B -f /var/lib/jenkins/jobs/Omri/workspace/pom.xml -Dmaven.repo.local=/var/lib/jenkins/maven-repositories/1 package 
    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:601) 
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:331) 
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:239) 
        at org.jvnet.hudson.maven3.agent.Maven3Main.launch(Maven3Main.java:174) 
        at hudson.maven.Maven3Builder.call(Maven3Builder.java:100) 
        at hudson.maven.Maven3Builder.call(Maven3Builder.java:66) 
        at hudson.remoting.UserRequest.perform(UserRequest.java:118) 
        at hudson.remoting.UserRequest.perform(UserRequest.java:48) 
        at hudson.remoting.Request$2.run(Request.java:326) 
        at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72) 
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) 
        at java.util.concurrent.FutureTask.run(FutureTask.java:166) 
        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:722) 
    Caused by: java.lang.NoClassDefFoundError: org/apache/maven/cli/MavenLoggerManager 
        at org.jvnet.hudson.maven3.launcher.Maven3Launcher.main(Maven3Launcher.java:73) 
        ... 18 more 
    Caused by: java.lang.ClassNotFoundException: org.apache.maven.cli.MavenLoggerManager 
        at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50) 
        at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244) 
        at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230) 
        ... 19 more 
    channel stopped 
    ERROR: Failed to parse POMs 
    hudson.util.IOException2: java.lang.reflect.InvocationTargetException 
        at hudson.maven.Maven3Builder.call(Maven3Builder.java:162) 
        at hudson.maven.Maven3Builder.call(Maven3Builder.java:66) 
        at hudson.remoting.UserRequest.perform(UserRequest.java:118) 
        at hudson.remoting.UserRequest.perform(UserRequest.java:48) 
        at hudson.remoting.Request$2.run(Request.java:326) 
        at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72) 
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) 
        at java.util.concurrent.FutureTask.run(FutureTask.java:166) 
        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:722) 
    Caused by: java.lang.Exception: java.lang.reflect.InvocationTargetException 
        at org.jvnet.hudson.maven3.agent.Maven3Main.launch(Maven3Main.java:177) 
        at hudson.maven.Maven3Builder.call(Maven3Builder.java:100) 
        ... 10 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:601) 
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:331) 
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:239) 
        at org.jvnet.hudson.maven3.agent.Maven3Main.launch(Maven3Main.java:174) 
        ... 11 more 
    Caused by: java.lang.NoClassDefFoundError: org/apache/maven/cli/MavenLoggerManager 
        at org.jvnet.hudson.maven3.launcher.Maven3Launcher.main(Maven3Launcher.java:73) 
        ... 18 more 
    Caused by: java.lang.ClassNotFoundException: org.apache.maven.cli.MavenLoggerManager 
        at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50) 
        at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244) 
        at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230) 
        ... 19 more 
    Finished: FAILURE 
    

    아이디어 사람 : 여기

은 젠킨스의 콘솔 출력입니까? 감사합니다. .

+0

maven 3.0.5가 설치된 명령 줄에서 maven 프로젝트를 올바르게 실행할 수 있습니다. 명령 줄에서 프로젝트에 maven을 실행할 수 있습니까? – Behe

답변

18

분명히 문제는 내가 불안정한 Maven의 최신 알파 버전을 설치했다는 것입니다. 최신 안정 버전 - 3.0.5 - 모든 것이 정상적으로 작동합니다.

+0

뻔뻔 스럽지만 여전히 관련이있다. Maven 설치 및 설정을 자동화하기 위해 wrapper uch를 Maven wrapper로 사용할 수있다 : https : // github. co.kr/rimerosolutions/maven-wrapper. 이는 머신을 빌드 할 때 편리하며 불안정하거나 테스트되지 않은 Maven 버전 사용과 같은 일반적인 문제를 피하는 데 도움이됩니다. – rimero

+2

이 버전은 현재 안정적이지만 Jenkins와 호환되지 않습니다. –

+3

Jenkins> = 1.525는 Maven 3.1.0에서 작동 할 수 있어야합니다 (https://issues.jenkins-ci.org/browse/JENKINS-15935 참조). – Henning

1

는 여기있다 : 당신은 젠킨스가 메이븐을 설치 두지 않을 경우

Caused by: java.lang.NoClassDefFoundError: org/apache/maven/cli/MavenLoggerManager 
    at org.jvnet.hudson.maven3.launcher.Maven3Launcher.main(Maven3Launcher.java:73) 
    ... 18 more 

는, 당신이 그것을 사용해야하는 메이븐 설치 위치를 구성해야합니다.

+0

내가 말했듯이, 내가 말했듯이, 그 설정을 포함한 링크의 튜토리얼을 따라 갔다. – Malki

관련 문제