Hi Jim

This is a Commons Logging - Log4J classic. It would take a while to explain it, but the short version is that Commons Logging and Log4J are probably in different classloaders. The best way to trace the source of the problem is to upgrade Commons Logging (temporarily) to version 1.1. That version has a neat diagnostics feature [1] that allows you you to investigate such classloader issues. Turn it on and have a look at the results you get.

[1] http://jakarta.apache.org/commons/logging/troubleshooting.html

--
Dennis Lundberg


Jim Downing wrote:
Hi,

I'm having problems with the jetty plugin - on running 'mvn jetty:run' I get a mysterious exception from clogging that is caused at some point by a NoClassDefFoundError complaining that it can't find log4j. Log4j is referenced by the project, ends up in the package war and is also listed by jetty as being on the classpath when it starts up, so I'm stumped why this is happening.

Excerpt (full stack and my pom attached): -

org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: No suitable Log constructor [Ljava.lang.Class;@b3f9b8 for org.apache.commons.logging.impl.Log4JLogger at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:532)
...
at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:525)
       ... 43 more
Caused by: java.lang.NoClassDefFoundError: org/apache/log4j/Logger
       at java.lang.Class.getDeclaredConstructors0(Native Method)

Thanks for any help you could give.

jim


------------------------------------------------------------------------

[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'jetty'.
[INFO] 
----------------------------------------------------------------------------
[INFO] Building Unnamed - uk.ac.cam.spectra:spectrasub:war:0.0.1
[INFO]    task-segment: [jetty:run]
[INFO] 
----------------------------------------------------------------------------
[INFO] Preparing jetty:run
[INFO] [resources:resources]
[INFO] Using default encoding to copy filtered resources.
[INFO] [compiler:compile]
[INFO] Nothing to compile - all classes are up to date
[INFO] [jetty:run]
[INFO] Configuring Jetty for project: Unnamed - 
uk.ac.cam.spectra:spectrasub:war:0.0.1
[INFO] Webapp source directory = 
/home/ojd20/projects/spectra/eclipse-workspace/spectrasub/src/main/webapp
[INFO] web.xml file = 
/home/ojd20/projects/spectra/eclipse-workspace/spectrasub/src/main/webapp/WEB-INF/web.xml
[INFO] Classes = 
/home/ojd20/projects/spectra/eclipse-workspace/spectrasub/target/classes
2006-12-14 15:23:48.966::INFO:  Logging to STDERR via org.mortbay.log.StdErrLog
[INFO] Context path = /spectrasub
[INFO] Tmp directory = 
/home/ojd20/projects/spectra/eclipse-workspace/spectrasub/target/work
[INFO] Web defaults =  jetty default
[INFO] Webapp directory = 
/home/ojd20/projects/spectra/eclipse-workspace/spectrasub/src/main/webapp
[INFO] Starting jetty 6.1-SNAPSHOT ...
2006-12-14 15:23:49.071::INFO:  jetty-6.1-SNAPSHOT
[INFO] Classpath = 
[file:/home/ojd20/projects/spectra/eclipse-workspace/spectrasub/target/classes/,
 file:/home/ojd20/.m2/repository/net/sourceforge/jcamp-dx/0.1/jcamp-dx-0.1.jar, 
file:/home/ojd20/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar,
 
file:/home/ojd20/.m2/repository/javax/servlet/servlet-api/2.4/servlet-api-2.4.jar,
 file:/home/ojd20/.m2/repository/net/sourceforge/jena/jena/2.4/jena-2.4.jar, 
file:/home/ojd20/.m2/repository/regexp/regexp/1.2/regexp-1.2.jar, 
file:/home/ojd20/.m2/repository/org/apache/tapestry/tapestry-framework/4.1/tapestry-framework-4.1.jar,
 file:/home/ojd20/.m2/repository/xerces/xercesImpl/2.6.2/xercesImpl-2.6.2.jar, 
file:/home/ojd20/.m2/repository/org/ostermiller/ostermillerutils/1.06/ostermillerutils-1.06.jar,
 file:/home/ojd20/.m2/repository/commons-io/commons-io/1.1/commons-io-1.1.jar, 
file:/home/ojd20/.m2/repository/commons-digester/commons-digester/1.7/commons-digester-1.7.jar,
 file:/home/ojd20/.m2/repository/commons-codec/comm
ons-codec/1.3/commons-codec-1.3.jar, 
file:/home/ojd20/.m2/repository/commons-fileupload/commons-fileupload/1.1/commons-fileupload-1.1.jar,
 
file:/home/ojd20/.m2/repository/hivemind/hivemind-lib/1.1.1/hivemind-lib-1.1.1.jar,
 file:/home/ojd20/.m2/repository/xom/xom/1.1/xom-1.1.jar, 
file:/home/ojd20/.m2/repository/cml/jumbo/5.3-beta1/jumbo-5.3-beta1.jar, 
file:/home/ojd20/.m2/repository/xalan/xalan/2.7.0/xalan-2.7.0.jar, 
file:/home/ojd20/.m2/repository/java3d/vecmath/1.3.1/vecmath-1.3.1.jar, 
file:/home/ojd20/.m2/repository/hivemind/hivemind/1.1.1/hivemind-1.1.1.jar, 
file:/home/ojd20/.m2/repository/stax/stax-api/1.0/stax-api-1.0.jar, 
file:/home/ojd20/.m2/repository/net/sourceforge/jena/iri/1.0/iri-1.0.jar, 
file:/home/ojd20/.m2/repository/org/springframework/spring-context/2.0/spring-context-2.0.jar,
 file:/home/ojd20/.m2/repository/woodstox/wstx-asl/2.8/wstx-asl-2.8.jar, 
file:/home/ojd20/.m2/repository/antlr/antlr/2.7.2/antlr-2.7.2.jar, 
file:/home/ojd20/.m2/repository/concurrent/con
current/1.3.4/concurrent-1.3.4.jar, 
file:/home/ojd20/.m2/repository/org/springframework/spring-core/2.0/spring-core-2.0.jar,
 file:/home/ojd20/.m2/repository/jboss/javassist/3.0/javassist-3.0.jar, 
file:/home/ojd20/.m2/repository/commons-collections/commons-collections/2.1/commons-collections-2.1.jar,
 
file:/home/ojd20/.m2/repository/org/springframework/spring-aop/2.0/spring-aop-2.0.jar,
 file:/home/ojd20/.m2/repository/junit/junit/3.8/junit-3.8.jar, 
file:/home/ojd20/.m2/repository/commons-lang/commons-lang/2.1/commons-lang-2.1.jar,
 
file:/home/ojd20/.m2/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar,
 file:/home/ojd20/.m2/repository/cml/cifdom/20061009/cifdom-20061009.jar, 
file:/home/ojd20/.m2/repository/jaxen/jaxen/1.1-beta-8/jaxen-1.1-beta-8.jar, 
file:/home/ojd20/.m2/repository/org/apache/tapestry/tapestry-annotations/4.1/tapestry-annotations-4.1.jar,
 file:/home/ojd20/.m2/repository/net/sourceforge/jena/arq/1.4/arq-1.4.jar, 
file:/home/ojd20/.m2/
repository/jdom/jdom/1.0/jdom-1.0.jar, 
file:/home/ojd20/.m2/repository/oro/oro/2.0.8/oro-2.0.8.jar, 
file:/home/ojd20/.m2/repository/log4j/log4j/1.2.6/log4j-1.2.6.jar, 
file:/home/ojd20/.m2/repository/org/json/json/1.0/json-1.0.jar, 
file:/home/ojd20/.m2/repository/org/springframework/spring-web/2.0/spring-web-2.0.jar,
 
file:/home/ojd20/.m2/repository/commons-logging/commons-logging/1.0.3/commons-logging-1.0.3.jar,
 
file:/home/ojd20/.m2/repository/com/javaforge/tapestry/tapestry-prop/1.0.0-SNAPSHOT/tapestry-prop-1.0.0-SNAPSHOT.jar,
 file:/home/ojd20/.m2/repository/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar, 
file:/home/ojd20/.m2/repository/com/javaforge/tapestry/tapestry-spring/0.1.2/tapestry-spring-0.1.2.jar,
 file:/home/ojd20/.m2/repository/icu4j/icu4j/3.4/icu4j-3.4.jar, 
file:/home/ojd20/.m2/repository/xerces/xmlParserAPIs/2.6.2/xmlParserAPIs-2.6.2.jar,
 file:/home/ojd20/.m2/repository/ognl/ognl/2.6.7/ognl-2.6.7.jar, 
file:/home/ojd20/.m2/repository/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.ja
r, 
file:/home/ojd20/.m2/repository/org/springframework/spring-beans/2.0/spring-beans-2.0.jar,
 file:/home/ojd20/.m2/repository/net/sf/jniinchi/0.1.1/jniinchi-0.1.1.jar]
2006-12-14 15:23:50.278::WARN:  failed [EMAIL 
PROTECTED]/spectrasub,file:/home/ojd20/projects/spectra/eclipse-workspace/spectrasub/src/main/webapp/}
org.apache.commons.logging.LogConfigurationException: 
org.apache.commons.logging.LogConfigurationException: No suitable Log 
constructor [Ljava.lang.Class;@b3f9b8 for 
org.apache.commons.logging.impl.Log4JLogger
        at 
org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:532)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:272)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:246)
        at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:395)
        at 
org.springframework.web.context.ContextLoader.<init>(ContextLoader.java:139)
        at 
org.springframework.web.context.ContextLoaderListener.createContextLoader(ContextLoaderListener.java:57)
        at 
org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:48)
        at 
org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:450)
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:124)
        at 
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1079)
        at 
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:420)
        at 
org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:410)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:156)
        at 
org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:120)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:156)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:119)
        at org.mortbay.jetty.Server.doStart(Server.java:226)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:134)
        at 
org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:327)
        at 
org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:272)
        at 
org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyRunMojo.java:177)
        at 
org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:183)
        at 
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:412)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:534)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:488)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:458)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:306)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:273)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:140)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:256)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
        at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
        at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
        at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.commons.logging.LogConfigurationException: No suitable 
Log constructor [Ljava.lang.Class;@b3f9b8 for 
org.apache.commons.logging.impl.Log4JLogger
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:432)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:525)
        ... 43 more
Caused by: java.lang.NoClassDefFoundError: org/apache/log4j/Logger
        at java.lang.Class.getDeclaredConstructors0(Native Method)
        at java.lang.Class.privateGetDeclaredConstructors(Class.java:2328)
        at java.lang.Class.getConstructor0(Class.java:2640)
        at java.lang.Class.getConstructor(Class.java:1629)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:429)
        ... 44 more
2006-12-14 15:23:50.282::WARN:  failed [EMAIL PROTECTED]
org.apache.commons.logging.LogConfigurationException: 
org.apache.commons.logging.LogConfigurationException: No suitable Log 
constructor [Ljava.lang.Class;@b3f9b8 for 
org.apache.commons.logging.impl.Log4JLogger
        at 
org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:532)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:272)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:246)
        at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:395)
        at 
org.springframework.web.context.ContextLoader.<init>(ContextLoader.java:139)
        at 
org.springframework.web.context.ContextLoaderListener.createContextLoader(ContextLoaderListener.java:57)
        at 
org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:48)
        at 
org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:450)
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:124)
        at 
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1079)
        at 
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:420)
        at 
org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:410)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:156)
        at 
org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:120)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:156)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:119)
        at org.mortbay.jetty.Server.doStart(Server.java:226)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:134)
        at 
org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:327)
        at 
org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:272)
        at 
org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyRunMojo.java:177)
        at 
org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:183)
        at 
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:412)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:534)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:488)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:458)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:306)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:273)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:140)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:256)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
        at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
        at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
        at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.commons.logging.LogConfigurationException: No suitable 
Log constructor [Ljava.lang.Class;@b3f9b8 for 
org.apache.commons.logging.impl.Log4JLogger
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:432)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:525)
        ... 43 more
Caused by: java.lang.NoClassDefFoundError: org/apache/log4j/Logger
        at java.lang.Class.getDeclaredConstructors0(Native Method)
        at java.lang.Class.privateGetDeclaredConstructors(Class.java:2328)
        at java.lang.Class.getConstructor0(Class.java:2640)
        at java.lang.Class.getConstructor(Class.java:1629)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:429)
        ... 44 more
2006-12-14 15:23:50.285::WARN:  failed [EMAIL PROTECTED]
org.apache.commons.logging.LogConfigurationException: 
org.apache.commons.logging.LogConfigurationException: No suitable Log 
constructor [Ljava.lang.Class;@b3f9b8 for 
org.apache.commons.logging.impl.Log4JLogger
        at 
org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:532)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:272)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:246)
        at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:395)
        at 
org.springframework.web.context.ContextLoader.<init>(ContextLoader.java:139)
        at 
org.springframework.web.context.ContextLoaderListener.createContextLoader(ContextLoaderListener.java:57)
        at 
org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:48)
        at 
org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:450)
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:124)
        at 
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1079)
        at 
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:420)
        at 
org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:410)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:156)
        at 
org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:120)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:156)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:119)
        at org.mortbay.jetty.Server.doStart(Server.java:226)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:134)
        at 
org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:327)
        at 
org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:272)
        at 
org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyRunMojo.java:177)
        at 
org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:183)
        at 
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:412)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:534)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:488)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:458)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:306)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:273)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:140)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:256)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
        at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
        at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
        at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.commons.logging.LogConfigurationException: No suitable 
Log constructor [Ljava.lang.Class;@b3f9b8 for 
org.apache.commons.logging.impl.Log4JLogger
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:432)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:525)
        ... 43 more
Caused by: java.lang.NoClassDefFoundError: org/apache/log4j/Logger
        at java.lang.Class.getDeclaredConstructors0(Native Method)
        at java.lang.Class.privateGetDeclaredConstructors(Class.java:2328)
        at java.lang.Class.getConstructor0(Class.java:2640)
        at java.lang.Class.getConstructor(Class.java:1629)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:429)
        ... 44 more
2006-12-14 15:23:50.301::INFO:  Started SelectChannelConnector @ 0.0.0.0:8084
2006-12-14 15:23:50.301::WARN:  failed [EMAIL PROTECTED]
org.apache.commons.logging.LogConfigurationException: 
org.apache.commons.logging.LogConfigurationException: No suitable Log 
constructor [Ljava.lang.Class;@b3f9b8 for 
org.apache.commons.logging.impl.Log4JLogger
        at 
org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:532)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:272)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:246)
        at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:395)
        at 
org.springframework.web.context.ContextLoader.<init>(ContextLoader.java:139)
        at 
org.springframework.web.context.ContextLoaderListener.createContextLoader(ContextLoaderListener.java:57)
        at 
org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:48)
        at 
org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:450)
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:124)
        at 
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1079)
        at 
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:420)
        at 
org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:410)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:156)
        at 
org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:120)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:156)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:119)
        at org.mortbay.jetty.Server.doStart(Server.java:226)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
        at 
org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:134)
        at 
org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:327)
        at 
org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:272)
        at 
org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyRunMojo.java:177)
        at 
org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:183)
        at 
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:412)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:534)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:488)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:458)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:306)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:273)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:140)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:256)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
        at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
        at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
        at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.commons.logging.LogConfigurationException: No suitable 
Log constructor [Ljava.lang.Class;@b3f9b8 for 
org.apache.commons.logging.impl.Log4JLogger
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:432)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:525)
        ... 43 more
Caused by: java.lang.NoClassDefFoundError: org/apache/log4j/Logger
        at java.lang.Class.getDeclaredConstructors0(Native Method)
        at java.lang.Class.privateGetDeclaredConstructors(Class.java:2328)
        at java.lang.Class.getConstructor0(Class.java:2640)
        at java.lang.Class.getConstructor(Class.java:1629)
        at 
org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:429)
        ... 44 more
[INFO] Jetty server exiting.
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failure

Embedded error: org.apache.commons.logging.LogConfigurationException: No 
suitable Log constructor [Ljava.lang.Class;@b3f9b8 for 
org.apache.commons.logging.impl.Log4JLogger
org/apache/log4j/Logger
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5 seconds
[INFO] Finished at: Thu Dec 14 15:23:50 GMT 2006
[INFO] Final Memory: 7M/14M
[INFO] ------------------------------------------------------------------------
2006-12-14 15:23:50.415::INFO:  Shutdown hook executing
2006-12-14 15:23:50.415::INFO:  Shutdown hook complete


------------------------------------------------------------------------

<?xml version="1.0" encoding="UTF-8"?><project>
  <modelVersion>4.0.0</modelVersion>
  <groupId>uk.ac.cam.spectra</groupId>
  <artifactId>spectrasub</artifactId>
  <packaging>war</packaging>
  <version>0.0.1</version>
  <description></description>
  <url>http://www.lib.cam.ac.uk/spectra/</url>
  <inceptionYear>2006</inceptionYear>
  <developers>
    <developer>
      <id>ojd20</id>
      <name>Jim Downing</name>
      <email>[EMAIL PROTECTED]</email>
      <url>http://wwmm.ch.cam.ac.uk/blogs/downing/</url>
      <organization>University of Cambridge</organization>
      <organizationUrl>http://www.cam.ac.uk/</organizationUrl>
    </developer>
  </developers>
  <contributors>
    <contributor>
      <name>Alan Tonge</name>
      <email>[EMAIL PROTECTED]</email>
      <organization>University of Cambridge</organization>
      <organizationUrl>http://www.cam.ac.uk/</organizationUrl>
      <roles>
        <role>Project manager</role>
        <role>Requirements analysis</role>
        <role>Testing</role>
      </roles>
    </contributor>
  </contributors>
  <licenses>
    <license>
      <name>Artistic License</name>
      <url>http://www.opensource.org/licenses/artistic-license.php</url>
      <distribution>repo</distribution>
    </license>
  </licenses>
  <scm>
    
<connection>scm:svn:https://wwmm.ch.cam.ac.uk/svn/groups/murrayrust/spectrasub/trunk</connection>
    <url>https://wwmm.ch.cam.ac.uk/svn/groups/murrayrust/spectrasub/trunk</url>
  </scm>
  <organization>
    <name>The SPECTRa Project</name>
    <url>http://www.lib.cam.ac.uk/spectra/</url>
  </organization>
  <build>
    <finalName>spectrasub</finalName>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>1.5</source>
          <target>1.5</target>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.3-SNAPSHOT</version>
        <configuration>
          <testFailureIgnore>false</testFailureIgnore>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.mortbay.jetty</groupId>
        <artifactId>maven-jetty-plugin</artifactId>
        <configuration>
          <scanIntervalSeconds>5</scanIntervalSeconds>
          <connectors>
            <connector 
implementation="org.mortbay.jetty.nio.SelectChannelConnector">
              <port>8084</port>
              <maxIdleTime>60000</maxIdleTime>
            </connector>
          </connectors>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>cobertura-maven-plugin</artifactId>
        <executions>
          <execution>
            <goals>
              <goal>clean</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <instrumentation>
            <excludes>
              <exclude>uk/ac/cam/spectra/spectrasub/pages/*</exclude>
              <exclude>uk/ac/cam/spectra/**/*Exception.class</exclude>
            </excludes>
          </instrumentation>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <repositories>
    <repository>
      <id>hls</id>
      <name>Howard Lewis Ship's Repo</name>
      <url>http://howardlewisship.com/repository/</url>
    </repository>
    <repository>
      <snapshots />
      <id>wwmm</id>
      <name>WWMM Maven2</name>
      <url>http://wwmm.ch.cam.ac.uk/maven2</url>
    </repository>
  </repositories>
  <pluginRepositories>
    <pluginRepository>
      <id>mortbay-repo</id>
      <name>mortbay-repo</name>
      <url>http://www.mortbay.org/maven2/snapshot</url>
    </pluginRepository>
    <pluginRepository>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots />
      <id>apache.org</id>
      <name>Maven Snapshots</name>
      <url>http://people.apache.org/maven-snapshot-repository</url>
    </pluginRepository>
  </pluginRepositories>
  <dependencies>
    <dependency>
      <groupId>cml</groupId>
      <artifactId>jumbo</artifactId>
      <version>5.3-beta1</version>
    </dependency>
    <dependency>
      <groupId>com.javaforge.tapestry</groupId>
      <artifactId>tapestry-prop</artifactId>
      <version>1.0.0-SNAPSHOT</version>
      <exclusions>
        <exclusion>
          <artifactId>tapestry</artifactId>
          <groupId>tapestry</groupId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>com.javaforge.tapestry</groupId>
      <artifactId>tapestry-spring</artifactId>
      <version>0.1.2</version>
      <exclusions>
        <exclusion>
          <artifactId>tapestry</artifactId>
          <groupId>tapestry</groupId>
        </exclusion>
        <exclusion>
          <artifactId>tapestry-annotations</artifactId>
          <groupId>tapestry</groupId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>commons-digester</groupId>
      <artifactId>commons-digester</artifactId>
      <version>1.7</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.6</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>net.sourceforge</groupId>
      <artifactId>jcamp-dx</artifactId>
      <version>0.1</version>
    </dependency>
    <dependency>
      <groupId>net.sourceforge.jena</groupId>
      <artifactId>jena</artifactId>
      <version>2.4</version>
</dependency> <dependency>
      <groupId>org.apache.tapestry</groupId>
      <artifactId>tapestry-annotations</artifactId>
      <version>4.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.tapestry</groupId>
      <artifactId>tapestry-framework</artifactId>
      <version>4.1</version>
    </dependency>
    <dependency>
      <groupId>org.easymock</groupId>
      <artifactId>easymockclassextension</artifactId>
      <version>2.2</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.ostermiller</groupId>
      <artifactId>ostermillerutils</artifactId>
      <version>1.06</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-beans</artifactId>
      <version>2.0</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-core</artifactId>
      <version>2.0</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-web</artifactId>
      <version>2.0</version>
    </dependency>
    <dependency>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      <version>5.1</version>
      <classifier>jdk15</classifier>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>xom</groupId>
      <artifactId>xom</artifactId>
      <version>1.1</version>
    </dependency>
  </dependencies>
  <reporting>
    <plugins>
      <plugin>
        <artifactId>maven-project-info-reports-plugin</artifactId>
        <configuration></configuration>
        <reportSets>
          <reportSet>
            <reports>
              <report>license</report>
              <report>project-team</report>
              <report>dependencies</report>
              <report>index</report>
              <report>summary</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>cobertura-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </reporting>
</project>


------------------------------------------------------------------------

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--
Dennis Lundberg

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to