Tomcat无法在eclipse上启动

问题描述:

在Eclipse中的Java EE项目中启动tomcat 7.0时遇到了一些问题。启动服务器时出现超时错误。 我还没有弄清楚什么是错的。 我尝试将超时限制增加到1800s,但不会改变任何内容。Tomcat无法在eclipse上启动

这里是日志当Tomcat尝试启动:

7 nov. 2012 13:59:33 org.apache.catalina.core.AprLifecycleListener init 
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: .:/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java 
7 nov. 2012 13:59:33 org.apache.tomcat.util.digester.SetPropertiesRule begin 
ATTENTION: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:test' did not find a matching property. 
7 nov. 2012 13:59:33 org.apache.coyote.AbstractProtocol init 
INFO: Initializing ProtocolHandler ["http-bio-8080"] 
7 nov. 2012 13:59:33 org.apache.coyote.AbstractProtocol init 
INFO: Initializing ProtocolHandler ["ajp-bio-8009"] 
7 nov. 2012 13:59:33 org.apache.catalina.startup.Catalina load 
INFO: Initialization processed in 590 ms 
7 nov. 2012 13:59:33 org.apache.catalina.core.StandardService startInternal 
INFO: Démarrage du service Catalina 
7 nov. 2012 13:59:33 org.apache.catalina.core.StandardEngine startInternal 
INFO: Starting Servlet Engine: Apache Tomcat/7.0.32 
7 nov. 2012 13:59:35 org.apache.catalina.core.ContainerBase startInternal 
GRAVE: A child container failed during start 
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/test]] 
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222) 
at java.util.concurrent.FutureTask.get(FutureTask.java:83) 
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123) 
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:800) 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) 
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) 
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
at java.util.concurrent.FutureTask.run(FutureTask.java:138) 
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
at java.lang.Thread.run(Thread.java:680) 
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/test]] 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) 
... 7 more 
Caused by: java.lang.NoClassDefFoundError: Lorg/apache/commons/logging/Log; 
at java.lang.Class.getDeclaredFields0(Native Method) 
at java.lang.Class.privateGetDeclaredFields(Class.java:2291) 
at java.lang.Class.getDeclaredFields(Class.java:1743) 
at org.apache.catalina.util.Introspection.getDeclaredFields(Introspection.java:87) 
at org.apache.catalina.startup.WebAnnotationSet.loadFieldsAnnotation(WebAnnotationSet.java:261) 
at org.apache.catalina.startup.WebAnnotationSet.loadApplicationServletAnnotations(WebAnnotationSet.java:140) 
at org.apache.catalina.startup.WebAnnotationSet.loadApplicationAnnotations(WebAnnotationSet.java:67) 
at org.apache.catalina.startup.ContextConfig.applicationAnnotationsConfig(ContextConfig.java:405) 
at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:881) 
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:369) 
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) 
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) 
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5173) 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
... 7 more 
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.Log 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714) 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559) 
... 21 more 
7 nov. 2012 13:59:35 org.apache.catalina.core.ContainerBase startInternal 
GRAVE: A child container failed during start 
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]] 
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222) 
at java.util.concurrent.FutureTask.get(FutureTask.java:83) 
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123) 
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:302) 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:443) 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:732) 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
at org.apache.catalina.startup.Catalina.start(Catalina.java:684) 
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:597) 
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322) 
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:451) 
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]] 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) 
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) 
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) 
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
at java.util.concurrent.FutureTask.run(FutureTask.java:138) 
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
at java.lang.Thread.run(Thread.java:680) 
Caused by: org.apache.catalina.LifecycleException: A child container failed during start 
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1131) 
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:800) 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
... 7 more 
7 nov. 2012 13:59:35 org.apache.catalina.startup.Catalina start 
GRAVE: Catalina.start: 
org.apache.catalina.LifecycleException: Failed to start component [StandardServer[8005]] 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) 
at org.apache.catalina.startup.Catalina.start(Catalina.java:684) 
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:597) 
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322) 
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:451) 
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardService[Catalina]] 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) 
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:732) 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
... 7 more 
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]] 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) 
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:443) 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
... 9 more 
Caused by: org.apache.catalina.LifecycleException: A child container failed during start 
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1131) 
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:302) 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
... 11 more 
7 nov. 2012 13:59:35 org.apache.catalina.startup.Catalina start 
INFO: Server startup in 1846 ms 

感谢您回应

INFO: Server startup in 1846 ms

具体来说,Tomcat作为成功启动(在你的堆栈跟踪的最后一行所示)的应用程序服务器这是名为test的Web应用程序无法部署为丢失的依赖(Apache的库)作为的结果你可以从

Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/test]] Caused by: java.lang.NoClassDefFoundError: Lorg/apache/commons/logging/Log;

看到here

下载缺少的依赖性,以免后患,复制你从上面的链接下载的公共图书馆罐子并将其放置在日e WEB-INF\lib部署包(文件夹或.war文件)的test文件夹。

另外,

下载并安装Apache下议院从共享网站here和日志库的最新副本复制到TOMCAT_HOME\common\lib文件夹(如果它不存在,创建路径)。 TOMCAT_HOME是指你的tomcat安装文件夹。不要将罐子复制到多个地点,这会在以后造成问题

Tomcat是无法启动由于安装的web应用的丢失的依赖。 从您的堆栈跟踪(去除的嗡嗡声:P)

...[blah blah]... 
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.Log 
at org.apache.catalina.loader.WebappClassLoader.loadClass [...] 
...[blah blah]... 
GRAVE: A child container failed during start 
...[blah blah]... 

尝试删除所有已部署的Web应用程序,并重新开始。如果Tomcat会启动,那么你可以试着弄清楚你的web应用程序导致了哪些混乱。