无法启动组件 .StandardHost .StandardContext ]

我得到这个Tomcat错误:

Sep 09, 2012 4:16:54 PM org.apache.catalina.core.AprLifecycleListener init Information: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Products\jdk1.7.0_03\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Products/jdk1.7.0_03/jre/bin/client;C:/Products/jdk1.7.0_03/jre/bin;C:/Products/jdk1.7.0_03/jre/lib/i386;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Products\jdk1.7.0_03\jre\bin;c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\DTS\Binn\;c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;c:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\;C:\Products\eclipse32;;. Sep 09, 2012 4:16:54 PM org.apache.tomcat.util.digester.SetPropertiesRule begin Warnung: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:NAR_JDBC_DBO' did not find a matching property. Sep 09, 2012 4:16:55 PM org.apache.coyote.AbstractProtocol init Information: Initializing ProtocolHandler ["http-bio-80"] Sep 09, 2012 4:16:55 PM org.apache.coyote.AbstractProtocol init Information: Initializing ProtocolHandler ["ajp-bio-8009"] Sep 09, 2012 4:16:55 PM org.apache.catalina.startup.Catalina load Information: Initialization processed in 1008 ms Sep 09, 2012 4:16:55 PM org.apache.catalina.core.StandardService startInternal Information: Starting service Catalina Sep 09, 2012 4:16:55 PM org.apache.catalina.core.StandardEngine startInternal Information: Starting Servlet Engine: Apache Tomcat/7.0.27 Sep 09, 2012 4:16:55 PM org.apache.catalina.core.ContainerBase startInternal Schwerwiegend: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/NAR_JDBC_DBO]] at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252) at java.util.concurrent.FutureTask.get(FutureTask.java:111) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1128) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:782) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556) 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:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722) Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/NAR_JDBC_DBO]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) ... 7 more Caused by: java.lang.NoClassDefFoundError: org/apache/commons/digester/RuleSet at java.lang.Class.getDeclaredFields0(Native Method) at java.lang.Class.privateGetDeclaredFields(Class.java:2308) at java.lang.Class.getDeclaredFields(Class.java:1760) at org.apache.catalina.startup.WebAnnotationSet.getDeclaredFields(WebAnnotationSet.java:452) at org.apache.catalina.startup.WebAnnotationSet.loadFieldsAnnotation(WebAnnotationSet.java:257) at org.apache.catalina.startup.WebAnnotationSet.loadApplicationServletAnnotations(WebAnnotationSet.java:136) at org.apache.catalina.startup.WebAnnotationSet.loadApplicationAnnotations(WebAnnotationSet.java:66) at org.apache.catalina.startup.ContextConfig.applicationAnnotationsConfig(ContextConfig.java:381) at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:858) at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:345) 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:5161) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 7 more Caused by: java.lang.ClassNotFoundException: org.apache.commons.digester.RuleSet at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1711) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556) ... 21 more Sep 09, 2012 4:16:55 PM org.apache.catalina.core.ContainerBase startInternal Schwerwiegend: 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:252) at java.util.concurrent.FutureTask.get(FutureTask.java:111) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1128) 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:675) 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.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:450) 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:1566) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556) 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:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722) Caused by: org.apache.catalina.LifecycleException: A child container failed during start at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1136) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:782) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 7 more Sep 09, 2012 4:16:55 PM org.apache.catalina.startup.Catalina start Schwerwiegend: 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:675) 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.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:450) 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:1136) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:302) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 11 more Sep 09, 2012 4:16:55 PM org.apache.catalina.startup.Catalina start Information: Server startup in 540 ms 

有什么问题? 我正在使用Apache Tomcat 7,并使用以下4个catalina jar:

  • catalina.jar
  • 卡塔利娜-的ant.jar
  • 卡特琳娜 – ha.jar
  • 卡特琳娜 – tribes.jar

是否有其他的JAR文件丢失?

你缺less来自Apache Commons Digester的 commons-digester3-3.2.jar 。 如果你正在使用Maven,你可以添加:

 <dependency> <groupId>commons-digester</groupId> <artifactId>commons-digester</artifactId> <version>2.1</version> </dependency> 

到你的项目依赖关系。

更新:来自最新下载页面的jar与您的应用程序所期望的包结构略有不同。 你可以用这个老的jar代替。

我在我的tomcat服务器有同样的问题,但是当我深入检查,我发现我在我的web.xml文件中添加一个新的标记,服务器不接受它,所以检查您的文件,如果任何更新发生然后重新启动您的Tomcat和会变好 。

web模块 – >属性 – >部署程序集 – >(添加文件夹“src / main / webapp”,Maven Dependencies和其他需要的模块)

如果你使用eclipse然后删除tomcat服务器和服务器文件夹,然后重新configuration这两个..

我在Java EE Eclipse中运行时遇到了这个问题。 这里没有任何答案有帮助。 最后为我做的是:

  1. maven干净
  2. 在debugging中启动tomcat

我一直在做一个maven干净安装,错误不会消失。 奇怪的。

我想你正在使用dynamicWeb项目,因为你在评论中提到了文件夹WEB-INF / lib; 如果是的话,确保你不把任何* -servlet jar文件放在这个文件夹或其他已经由容器提供的jar中,在这个例子中是Tomcat。 Plus:一旦我使用了jersey-servlet.jar,并且我需要将它从lib文件夹中移除以便Tomcat毫无问题地启动; 那么我只使用jersey-bundle.jar,它运作良好。

那么我不知道是什么原因,但我已经这样做了同样的错误。 我已经为这个servelet及其工作注释了这个注释。

 //@WebServlet("/HelloWorld") public class HelloWorld extends HttpServlet { 

不知道这可能是不适当的解决scheme。 但是这个工作,另一个可以testing的东西是添加到类path的servlet jar。 这可能工作。

我有同样的问题,甚至在尝试“mvn eclipse:eclipse -Dwtpversion = 2.0”和“mvn clean install”之后。 但是,我清理我的服务器后,它只是工作。 所以,也许在你确定你有所有的依赖需要尝试清理服务器。

我遇到了这个错误,并尝试了几个你提到的方式仍然没有工作。 我甚至试图重新安装Tomcat,仍然有这个错误。

我做的最后一件事是删除整个Netbeans和Tomcat。 终于解决了。 我知道这不是解决问题的好方法,但是如果你真的很急,不知道该怎么做。

我遇到过同样的问题。 经过多次search,我决定在Eclipse中重新configuration我的服务器。 (即按照Benson的build议进行清理转到Project Explorer,Servers和Delete(确保也删除磁盘上的内容)然后进入Windows-> Preferences-> Server-> Runtime Environments删除Tomcat服务器,然后重新添加。

这将清理server.xml,webxml,context.xml文件。 它基本上重写它们。 我的一件事(或多件事)是错误的,这就解决了这个问题。 比试图find有问题的标签/线要简单一点

通过在您的项目上运行mvn clean install来检查您的应用程序是否成功构build,并更正所有错误

通常这个错误是在你的类path中没有依赖的时候出现的。

如果您正在使用tomcat maven插件,请尝试使用以下命令部署您的战争

 tomcat7:run-war-only 

Windows – >首选项 – >服务器 – >运行环境 – >删除所有可用的Apache服务器。 添加相同的。 现在在服务器上运行应用程序。 完成 :)

尝试在你的pom.xml中添加这个maven依赖项:

 <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.2</version> </dependency> 

我有同样的问题。

org.apache.catalina.LifecycleException:无法启动组件[StandardEngine [Catalina] .StandardHost [localhost] .StandardContext []]

已经是所有机器人。 我的pom.xml:

http://maven.apache.org/xsd/maven-4.0.0.xsd“>; 4.0.0 com.springapp war 1.0-SNAPSHOT war rent </ name> – >

 <properties> <spring.version>4.1.1.RELEASE</spring.version> <spring.security.version>3.2.6.RELEASE</spring.security.version> </properties> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.version}</version> </dependency> <!--Spring Security--> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-web</artifactId> <version>${spring.security.version}</version> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-config</artifactId> <version>${spring.security.version}</version> </dependency> <!--JUnit--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> </dependency> </dependencies> <build> <finalName>war</finalName> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> <configuration> <includes> <include>**/*Test.java</include> </includes> </configuration> </plugin> </plugins> </build> 

我在web.ml中configuration了一个servlet,我再一次在servlet类中使用了注释来configuration相同的servlet。 我删除了基于注释的configuration,然后服务器正常启动。

server.xml是在发布项目时创build的。现在,如果稍后添加更多的依赖关系,那么server.xml将无法捕获它,除非它再次刷新。 有时候你也需要重build上下文/configuration文件。 首先尝试清理工作目录。如果不起作用,则删除服务器和服务器文件夹,然后重新configuration这两个文件夹。

所有我find解决scheme,无论你所有得到例外像.. org.apache.catalina.LifecycleException:无法启动组件[StandardEngine [Catalina] .StandardHost [localhost] .StandardContext []] ..

jar子的path问题

为了解决这个问题,把所有的jar放在“WebContent / lib”中,无论你需要什么, 我希望它对你有用…

在intelliJ中,我在应用服务器configuration中为Tomcat Home和Tomcat基本目录指定了两个不同的tomcat版本/文件夹

这是因为一个或所有的maven依赖被破坏。 只要删除损坏的依赖关系或所有的maven本地依赖关系,并重新启动eclipse和更新项目。