2013-06-30 22 views
10

Ho seguito per impostare Jenkins con GIT e Maven (con lievi modifiche perché sto usando Linux CenOS).Jenkins non è in grado di eseguire Maven

sto cercando di testare la mia messa a punto su un Demo Maven project from GitHub

Jenkins genera un'eccezione quando si tenta di eseguire Maven. Così ho provato a git-clonare il progetto ed eseguire Maven manualmente e funziona perfettamente.

Quindi il problema è con Jenkins che esegue Maven. Ho provato a cercare su Google il problema ma non sono riuscito a trovare alcuna informazione utile.

I miei sospetti attuali sono:

  1. Forse Jenkins non utilizza il percorso di classe corretta per l'esecuzione di Maven. Ciò potrebbe essere dovuto alla mancanza di permesso di leggere i file, dal momento che Jenkins ha il proprio utente su linux (chiamato jenkins).
  2. Forse Maven non è installato correttamente. L'ho installato manualmente, invece di far installare Jenkins per me, poiché ho bisogno che questa configurazione funzioni offline.

Ecco l'output della console da Jenkins:

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 

idee chiunque? Grazie.

+0

Potrei eseguire correttamente il tuo progetto di maven sulla riga di comando con maven 3.0.5 installato. Puoi eseguire Maven per il tuo progetto sulla riga di comando? – Behe

risposta

18

Apparentemente il problema era che ho installato la versione alpha più recente di Maven, che è instabile. Con l'ultima versione stabile - 3.0.5 - tutto funziona perfettamente.

+0

Pubblicità palese ma ancora rilevante, puoi usare wrappers uch come wrapper Maven per automatizzare l'installazione e l'installazione di Maven: https: // github. com/rimerosolutions/Maven-wrapper. Questo è utile per le macchine di compilazione e aiuta ad evitare problemi comuni come l'uso di versioni di Maven instabili o non testate. – rimero

+2

Questa versione è stabile ora, ma non funziona ancora con Jenkins. –

+3

Jenkins> = 1.525 dovrebbe essere in grado di funzionare con Maven 3.1.0 (vedere https://issues.jenkins-ci.org/browse/JENKINS-15935) – Henning

1

Eccolo:

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

Se non stai lasciando Jenkins installare Maven, allora avete bisogno di configurare la posizione dell'installazione Maven dovrebbe usare.

+0

L'ho fatto - Come ho detto, ho seguito il tutorial nel link, inclusa quella configurazione – Malki

Problemi correlati