при попытке выполнить «lein test» с помощью Jenkins «Не удалось загрузить Logmanager» org.apache.juli.ClassLoaderLogManager "" - PullRequest
3 голосов
/ 17 февраля 2012

Я пытаюсь выполнить «lein test» с jenkins, но получаю следующую ошибку.Но если я запускаю его в оболочке (с тем же пользователем 'tomcat6'), все в порядке и работает.Буду признателен за любую помощь.Я использую Ubuntu, Tomcat6, Jenkins 1.451, java 1.6.0_22 (тоже пробовал с 1.7).

[workspace] $ /bin/sh -xe /tmp/tomcat6-tmp/hudson7048679986651055690.sh
+ whoami
tomcat6
+ cd /home/dev-monster/rfz-repository/debtapp/app
+ lein --version
Leiningen 1.6.1.1 on Java 1.6.0_22 Java HotSpot(TM) 64-Bit Server VM
+ echo ""
""
+ echo /opt/jenkins/tools/1.6.0_22/jre
/opt/jenkins/tools/1.6.0_22/jre
+ echo /opt/jenkins/tools/1.6.0_22
/opt/jenkins/tools/1.6.0_22
+ lein test
Could not load Logmanager "org.apache.juli.ClassLoaderLogManager"
java.lang.ClassNotFoundException: org.apache.juli.ClassLoaderLogManager
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
    at java.util.logging.LogManager$1.run(LogManager.java:168)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.util.logging.LogManager.<clinit>(LogManager.java:158)
    at java.util.logging.Logger.getLogger(Logger.java:273)
    at sun.awt.AppContext.<clinit>(AppContext.java:114)
    at java.beans.Introspector.getBeanInfo(Introspector.java:157)
    at org.apache.log4j.config.PropertySetter.introspect(PropertySetter.java:76)
    at org.apache.log4j.config.PropertySetter.getPropertyDescriptor(PropertySetter.java:244)
    at org.apache.log4j.config.PropertySetter.setProperty(PropertySetter.java:156)
    at org.apache.log4j.xml.DOMConfigurator.setParameter(DOMConfigurator.java:973)
    at org.apache.log4j.xml.DOMConfigurator.setParameter(DOMConfigurator.java:618)
    at org.apache.log4j.xml.DOMConfigurator.parseAppender(DOMConfigurator.java:255)
    at org.apache.log4j.xml.DOMConfigurator.findAppenderByName(DOMConfigurator.java:171)
    at org.apache.log4j.xml.DOMConfigurator.findAppenderByReference(DOMConfigurator.java:184)
    at org.apache.log4j.xml.DOMConfigurator.parseChildrenOfLoggerElement(DOMConfigurator.java:502)
    at org.apache.log4j.xml.DOMConfigurator.parseCategory(DOMConfigurator.java:415)
    at org.apache.log4j.xml.DOMConfigurator.parse(DOMConfigurator.java:919)
    at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:790)
    at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:696)
    at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:471)
    at org.apache.log4j.LogManager.<clinit>(LogManager.java:125)
    at org.apache.log4j.Logger.getLogger(Logger.java:118)
    at com.mchange.v2.log.log4j.Log4jMLog.getMLogger(Log4jMLog.java:51)
    at com.mchange.v2.log.MLog.getLogger(MLog.java:145)
    at com.mchange.v2.log.MLog.<clinit>(MLog.java:72)
    at com.mchange.v2.naming.JavaBeanReferenceMaker.<clinit>(JavaBeanReferenceMaker.java:39)
    at com.mchange.v2.c3p0.impl.PoolBackedDataSourceBase.<clinit>(PoolBackedDataSourceBase.java:203)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:169)
    at korma.db$loading__4414__auto__.invoke(db.clj:1)
    at korma.db__init.load(Unknown Source)
    at korma.db__init.<clinit>(Unknown Source)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    at clojure.lang.RT.loadClassForName(RT.java:1578)
    at clojure.lang.RT.load(RT.java:399)
    at clojure.lang.RT.load(RT.java:381)
    at clojure.core$load$fn__4519.invoke(core.clj:4915)
    at clojure.core$load.doInvoke(core.clj:4914)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.core$load_one.invoke(core.clj:4729)
    at clojure.core$load_lib.doInvoke(core.clj:4766)
    at clojure.lang.RestFn.applyTo(RestFn.java:142)
    at clojure.core$apply.invoke(core.clj:542)
    at clojure.core$load_libs.doInvoke(core.clj:4800)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:542)
    at clojure.core$require.doInvoke(core.clj:4881)
    at clojure.lang.RestFn.invoke(RestFn.java:436)
    at app.db$loading__4414__auto__.invoke(db.clj:6)
    at app.db__init.load(Unknown Source)
    at app.db__init.<clinit>(Unknown Source)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    at clojure.lang.RT.loadClassForName(RT.java:1578)
    at clojure.lang.RT.load(RT.java:399)
    at clojure.lang.RT.load(RT.java:381)
    at clojure.core$load$fn__4519.invoke(core.clj:4915)
    at clojure.core$load.doInvoke(core.clj:4914)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.core$load_one.invoke(core.clj:4729)
    at clojure.core$load_lib.doInvoke(core.clj:4766)
    at clojure.lang.RestFn.applyTo(RestFn.java:142)
    at clojure.core$apply.invoke(core.clj:542)
    at clojure.core$load_libs.doInvoke(core.clj:4800)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:544)
    at clojure.core$use.doInvoke(core.clj:4892)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at app.models.util$loading__4414__auto__.invoke(util.clj:3)
    at app.models.util__init.load(Unknown Source)
    at app.models.util__init.<clinit>(Unknown Source)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    at clojure.lang.RT.loadClassForName(RT.java:1578)
    at clojure.lang.RT.load(RT.java:399)
    at clojure.lang.RT.load(RT.java:381)
    at clojure.core$load$fn__4519.invoke(core.clj:4915)
    at clojure.core$load.doInvoke(core.clj:4914)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.core$load_one.invoke(core.clj:4729)
    at clojure.core$load_lib.doInvoke(core.clj:4766)
    at clojure.lang.RestFn.applyTo(RestFn.java:142)
    at clojure.core$apply.invoke(core.clj:542)
    at clojure.core$load_libs.doInvoke(core.clj:4800)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:542)
    at clojure.core$require.doInvoke(core.clj:4881)
    at clojure.lang.RestFn.invoke(RestFn.java:421)
    at app.core.flow$loading__4414__auto__.invoke(flow.clj:1)
    at app.core.flow__init.load(Unknown Source)
    at app.core.flow__init.<clinit>(Unknown Source)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    at clojure.lang.RT.loadClassForName(RT.java:1578)
    at clojure.lang.RT.load(RT.java:399)
    at clojure.lang.RT.load(RT.java:381)
    at clojure.core$load$fn__4519.invoke(core.clj:4915)
    at clojure.core$load.doInvoke(core.clj:4914)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.core$load_one.invoke(core.clj:4729)
    at clojure.core$load_lib.doInvoke(core.clj:4766)
    at clojure.lang.RestFn.applyTo(RestFn.java:142)
    at clojure.core$apply.invoke(core.clj:542)
    at clojure.core$load_libs.doInvoke(core.clj:4800)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:542)
    at clojure.core$require.doInvoke(core.clj:4881)
    at clojure.lang.RestFn.invoke(RestFn.java:1789)
    at app.actions.new_years$loading__4414__auto__.invoke(new_years.clj:5)
    at app.actions.new_years__init.load(Unknown Source)
    at app.actions.new_years__init.<clinit>(Unknown Source)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    at clojure.lang.RT.loadClassForName(RT.java:1578)
    at clojure.lang.RT.load(RT.java:399)
    at clojure.lang.RT.load(RT.java:381)
    at clojure.core$load$fn__4519.invoke(core.clj:4915)
    at clojure.core$load.doInvoke(core.clj:4914)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.core$load_one.invoke(core.clj:4729)
    at clojure.core$load_lib.doInvoke(core.clj:4766)
    at clojure.lang.RestFn.applyTo(RestFn.java:142)
    at clojure.core$apply.invoke(core.clj:542)
    at clojure.core$load_libs.doInvoke(core.clj:4800)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:544)
    at clojure.core$use.doInvoke(core.clj:4892)
    at clojure.lang.RestFn.invoke(RestFn.java:436)
    at app.test.actions.new_years$eval61$loading__4414__auto____62.invoke(new_years.clj:1)
    at app.test.actions.new_years$eval61.invoke(new_years.clj:1)
    at clojure.lang.Compiler.eval(Compiler.java:5424)
    at clojure.lang.Compiler.eval(Compiler.java:5415)
    at clojure.lang.Compiler.load(Compiler.java:5857)
    at clojure.lang.RT.loadResourceScript(RT.java:340)
    at clojure.lang.RT.loadResourceScript(RT.java:331)
    at clojure.lang.RT.load(RT.java:409)
    at clojure.lang.RT.load(RT.java:381)
    at clojure.core$load$fn__4519.invoke(core.clj:4915)
    at clojure.core$load.doInvoke(core.clj:4914)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.core$load_one.invoke(core.clj:4729)
    at clojure.core$load_lib.doInvoke(core.clj:4766)
    at clojure.lang.RestFn.applyTo(RestFn.java:142)
    at clojure.core$apply.invoke(core.clj:542)
    at clojure.core$load_libs.doInvoke(core.clj:4800)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:542)
    at clojure.core$require.doInvoke(core.clj:4881)
    at clojure.lang.RestFn.invoke(RestFn.java:421)
    at user$eval29.invoke(NO_SOURCE_FILE:1)
    at clojure.lang.Compiler.eval(Compiler.java:5424)
    at clojure.lang.Compiler.eval(Compiler.java:5415)
    at clojure.lang.Compiler.eval(Compiler.java:5391)
    at clojure.core$eval.invoke(core.clj:2382)
    at clojure.main$eval_opt.invoke(main.clj:235)
    at clojure.main$initialize.invoke(main.clj:254)
    at clojure.main$null_opt.invoke(main.clj:279)
    at clojure.main$main.doInvoke(main.clj:354)
    at clojure.lang.RestFn.invoke(RestFn.java:421)
    at clojure.lang.Var.invoke(Var.java:369)
    at clojure.lang.AFn.applyToHelper(AFn.java:163)
    at clojure.lang.Var.applyTo(Var.java:482)
    at clojure.main.main(main.java:37)

Ответы [ 2 ]

2 голосов
/ 17 февраля 2012

Вот что-то связанное . Посмотрите, работает ли обходной путь, который они там дают, в вашем случае. Если вы вообще используете Gradle, отключите его. Посмотрите, поможет ли это.

0 голосов
/ 25 сентября 2012

Благодаря ссылке, предоставленной @malenkiy_scot, я обнаружил, что сброс JAVA_OPTS и установка JAVA_HOME в сборке задания / конфигурации Jenkins 'execute shell' решили эту проблему.Обратите внимание, что я использую lein run, а не lein test

До:

lein run -m some.clojure.app
>> Could not load Logmanager "org.apache.juli.ClassLoaderLogManager"
>> java.lang.ClassNotFoundException: org.apache.juli.ClassLoaderLogManager ...

После:

unset JAVA_OPTS
export JAVA_HOME=/usr/lib/jvm/java-6-sun
lein run -m some.clojure.app
>> [SUCCESS]

Настройка:

  • Leiningen 1.7
  • Jenkins 1.466.2
  • Ubuntu 10.04.3 LTS
  • Не используется Gradle
...