【问题标题】:Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/JDBC_DBO]]无法启动组件 [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/JDBC_DBO]]
【发布时间】:2012-09-02 15:17:41
【问题描述】:

我得到这个 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
  • catalina-ant.jar
  • catalina-ha.jar
  • catalina-tribes.jar

是否缺少其他 JAR 文件?

【问题讨论】:

标签: java tomcat catalina executionexception lifecycleexception


【解决方案1】:

您在Apache Commons Digester 中缺少commons-digester3-3.2.jar。如果您使用的是 Maven,您可以添加:

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

到您的项目依赖项。

更新: 最新下载页面中的 jar 包结构与您的应用程序所期望的略有不同。您可以改用this older jar

【讨论】:

  • 我将 jars 添加到 Apache Tomcat 7.0 但我得到了同样的错误:-(
  • 错误信息一模一样吗?您的应用程序可能已正确重新部署。 jar 是否在 WEB-INF/lib 中?
  • 不,不完全一样。看看这个:
  • jar 不在 WEB-INF/lib 中。应该吗?
  • 是的,但这是一篇较旧的帖子 ;-) 您可以在此处查看新帖子 link
【解决方案2】:

我在我的 tomcat 服务器中遇到了同样的问题,但是当我深入检查时,我发现我在 web.xml 文件中添加了一个新标签并且服务器不接受它所以检查你的文件是否发生任何更新然后重新启动你的 tomcat 会很好的。

【讨论】:

  • 谢谢,这解决了我的问题,我在 web.xml 中遗漏了一个“/”。
【解决方案3】:

如果你使用 Eclipse 然后删除 tomcat 服务器和服务器文件夹然后重新配置 那两个..

【讨论】:

    【解决方案4】:

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

    【讨论】:

      【解决方案5】:

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

      1. Maven 清洁
      2. 在调试中启动 tomcat

      我一直在进行 maven 全新安装,并且错误不会消失。很奇怪。

      【讨论】:

        【解决方案6】:

        我猜您正在使用动态 Web 项目,因为您在评论中提到了 de 文件夹 WEB-INF/lib;如果是,请确保您没有将任何 *-servlet jar 文件放入此文件夹或容器已提供的其他 jar 中,在本例中为 Tomcat。 另外:一旦我使用了 jersey-servlet.jar,我需要将它从 lib 文件夹中删除,以便 Tomcat 正常启动;然后我只使用 jersey-bundle.jar 并且效果很好。

        【讨论】:

          【解决方案7】:

          好吧,我不确定实际原因是什么,但我已经为同样的错误这样做了。我已经注释掉了这个用于 serverlet 及其工作的注释。

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

          不知道这可能是不是的正确解决方案。但这有效,另一件可以测试的事情是将 servlet jar 添加到类路径中。这可能行得通。

          【讨论】:

          • 有谁知道为什么会这样?它也对我有用(Tomcat 8 w/Eclipse)
          • 我也一样,我写错了 urlPatterns...谢谢!
          • 它也适用于我...谢谢!我遇到了与 SeReGa 相同的问题...以错误的方式使用了“urlPatterns”参数...我没有在起始位置添加“/”。
          【解决方案8】:

          如果您使用的是动态 Web 项目,请确保您已将 jar 文件添加为“WebContent > WEB-INF > lib”文件夹中的 commons-logging-1.2.jar

          你还可以做以下几步:

          1. 右键单击项目>属性>目标运行时>从列表中选择Apache Tomcat服务器>应用>确定。

          2. 转到服务器选项卡 > 右键单击​​已配置的服务器 > 属性 > 常规 > 切换位置(例如 - /Servers/Tomcat/.....)> 应用 > 确定。

          就是这样!

          【讨论】:

            【解决方案9】:

            对我来说,我做了mvn clean,然后重启了tomcat。它对我有用

            【讨论】:

              【解决方案10】:

              即使在尝试了“mvn eclipse:eclipse -Dwtpversion=2.0”和“mvn clean install”之后,我也遇到了同样的问题。但是在我清理我的服务器后,它就可以工作了。因此,也许在您确定拥有所需的所有依赖项之后,请尝试清理服务器。

              【讨论】:

              • 清洁不起作用。但在另一台服务器上运行后,它运行良好。
              • 谢谢!为我工作。
              【解决方案11】:

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

              通常,当您的类路径中不存在依赖项时会出现此错误。

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

              tomcat7:run-war-only
              

              【讨论】:

                【解决方案12】:

                我也有同样的问题

                Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/]

                我在一开始就添加了相应的依赖项,它对我有用。

                <dependency>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-starter-tomcat</artifactId>
                        <scope>provided</scope>
                </dependency>
                

                【讨论】:

                  【解决方案13】:

                  我有同样的问题。经过大量搜索后,我决定在 Eclipse 中重新配置我的服务器。 (即按照 Benson 的建议清洁它 转到项目资源管理器、服务器和删除(确保您还删除了磁盘上的内容) 然后转到 Windows-> 首选项-> 服务器-> 运行时环境 删除 Tomcat 服务器,然后重新添加。

                  这会清理 server.xml、webxml、context.xml 文件。它基本上重写了它们。我的一件(或多件事情)出了问题,这解决了它。比试图找到有问题的标签/行更简单

                  【讨论】:

                    【解决方案14】:

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

                    【讨论】:

                      【解决方案15】:

                      我遇到了这个错误并尝试了你们提到的几种方法仍然没有工作。我什至尝试重新安装Tomcat,仍然出现此错误。

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

                      【讨论】:

                        【解决方案16】:

                        所有我都找到了解决方案,无论你们遇到什么异常,比如.. org.apache.catalina.LifecycleException: 无法启动组件 [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]..

                        罐子的bulid路径问题..

                        为了解决这个问题.. 将所有 jars 放在“WebContent/lib”中,无论您在项目中需要什么。 希望对你有用...

                        【讨论】:

                          【解决方案17】:

                          这是因为一个或所有 maven 依赖项已损坏。只需删除损坏的依赖项或所有 maven 本地依赖项,然后重新启动 eclipse 并更新项目。

                          【讨论】:

                            【解决方案18】:

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

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

                            【讨论】:

                              【解决方案19】:

                              我遇到了同样的问题。

                              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 战争 1.0-快照 战争 出租-->

                              <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>
                              

                              【讨论】:

                                【解决方案20】:

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

                                【讨论】:

                                  【解决方案21】:

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

                                  【讨论】:

                                    【解决方案22】:

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

                                    【讨论】:

                                      【解决方案23】:

                                      我遇到了同样的问题,这是由这个嵌套异常引起的

                                      Caused by: java.util.zip.ZipException: invalid LOC header (bad signature)
                                          at java.util.zip.ZipFile.read(Native Method)
                                          at java.util.zip.ZipFile.access$1400(ZipFile.java:60)
                                      

                                      仔细看是因为spring版本的签名不好。将 spring 版本更改为 4.3.4,构建并部署。一切正常。

                                      HTH

                                      【讨论】:

                                        【解决方案24】:

                                        发布此解决方案可能对某人有所帮助:

                                        我在 Tomcat 8.0 中遇到了类似的问题。似乎tomcat jar文件可能已损坏。所以我刚刚下载了新的 Tomcat 8.0,解压缩并使用我的 Eclipse IDE 对其进行了配置。还要检查首选项菜单下的 Project Facet。

                                        【讨论】:

                                          【解决方案25】:

                                          我认为您正在使用的部署描述符和依赖项存在问题。

                                          我遇到了通过执行这些操作解决的相同问题。 更新你的 POM.XML

                                          <dependencies>
                                                  <dependency>
                                                      <groupId>junit</groupId>
                                                      <artifactId>junit</artifactId>
                                                      <version>3.8.1</version>
                                                      <scope>test</scope>
                                                  </dependency>
                                                  <dependency>
                                                      <groupId>com.sun.jersey</groupId>
                                                      <artifactId>jersey-server</artifactId>
                                                      <version>1.17</version>
                                                  </dependency>
                                                  <dependency>
                                                      <groupId>com.sun.jersey</groupId>
                                                      <artifactId>jersey-servlet</artifactId>
                                                      <version>1.17</version>
                                                  </dependency>
                                                  <dependency>
                                                      <groupId>javax.ws.rs</groupId>
                                                      <artifactId>jsr311-api</artifactId>
                                                      <version>1.1.1</version>
                                                  </dependency>
                                                  <dependency>
                                                      <groupId>com.sun.jersey</groupId>
                                                      <artifactId>jersey-client</artifactId>
                                                      <version>1.17</version>
                                                  </dependency>
                                                  <!-- https://mvnrepository.com/artifact/javax.servlet/servlet-api -->
                                                  <dependency>
                                                      <groupId>javax.servlet</groupId>
                                                      <artifactId>servlet-api</artifactId>
                                                      <version>2.5</version>
                                                      <scope>provided</scope>
                                                  </dependency>
                                          
                                                  <!-- https://mvnrepository.com/artifact/com.googlecode.json-simple/json-simple -->
                                                  <dependency>
                                                      <groupId>com.googlecode.json-simple</groupId>
                                                      <artifactId>json-simple</artifactId>
                                                      <version>1.1.1</version>
                                                  </dependency>
                                          
                                              </dependencies>
                                          

                                          此外,仅在 POM.XML 下的构建标记中添加此代码,因为 Container 需要知道您的资源文件在哪里配置。

                                          <build>
                                                  <finalName>HatchWaysAppAPI</finalName>
                                                  <sourceDirectory>src/main/resources</sourceDirectory>
                                                  <plugins>
                                          
                                                      <plugin>
                                                          <artifactId>maven-war-plugin</artifactId>
                                                          <version>2.4</version>
                                                          <configuration>
                                                              <warSourceDirectory>WebContent</warSourceDirectory>
                                                              <failOnMissingWebXml>false</failOnMissingWebXml>
                                                          </configuration>
                                                      </plugin>
                                          
                                                      <plugin>
                                                          <artifactId>maven-compiler-plugin</artifactId>
                                                          <version>3.1</version>
                                                          <configuration>
                                                              <source>1.8</source>
                                                              <target>1.8</target>
                                                          </configuration>
                                                      </plugin>
                                          
                                                  </plugins>
                                              </build>
                                          

                                          根据您的要求更改您的资源文件夹。

                                          您的 Web.xml 应该是这样的。

                                          <servlet>
                                                  <servlet-name>HatchWaysAppAPI Maven Webapp</servlet-name>
                                                  <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
                                                  <init-param>
                                                      <param-name>com.sun.jersey.config.property.packages</param-name>
                                                      <param-value>com.hatchwaysapi.mainController</param-value>
                                                  </init-param>
                                                  <load-on-startup>1</load-on-startup>
                                              </servlet>
                                          
                                              <servlet-mapping>
                                                  <servlet-name>HatchWaysAppAPI Maven Webapp</servlet-name>
                                                  <url-pattern>/v1/*</url-pattern>
                                              </servlet-mapping>
                                          

                                          注意此配置仅适用于 maven,如果您不使用 maven,则忽略 Pom.XML,只需配置 Web.xml。

                                          【讨论】:

                                            【解决方案26】:

                                            我已经更改了 WEB INF 的 lib 文件夹中的所有 spring 版本的 jar,如果你使用的是 maven 项目,它对我有用,只是用不同的版本更新依赖项它可能会工作

                                            【讨论】:

                                              【解决方案27】:

                                              在互联网上花费大量时间之后。我发现没有选项 为我工作过 右键单击服务器-> 清理。没用。

                                              有效的是:

                                              您只需将&lt;absolute-ordering/&gt; 标记添加到您的 web.xml 就在&lt;display-name&gt; 标记下,它应该可以工作。for more detail click here

                                              【讨论】:

                                                【解决方案28】:

                                                只需清理您的服务器(在我的情况下,我使用的是 Tomcat):

                                                mvn clean
                                                mvn install
                                                

                                                【讨论】:

                                                  【解决方案29】:

                                                  我在 web.xml 中提到的过滤器名称不存在。纠正错字后,它工作得很好。

                                                  【讨论】:

                                                    【解决方案30】:

                                                    要解决此问题,您必须删除目录中的 .snap 文件:

                                                    &lt;workspace-directory&gt;\.metadata\.plugins\org.eclipse.core.resources.

                                                    删除此文件后,您可以毫无问题地启动 Eclipse。

                                                    【讨论】:

                                                    • 删除文件后无法再启动eclipse。
                                                    猜你喜欢
                                                    • 2013-08-26
                                                    • 2017-02-16
                                                    • 2014-12-28
                                                    • 1970-01-01
                                                    • 1970-01-01
                                                    • 2021-05-16
                                                    • 1970-01-01
                                                    • 2018-03-04
                                                    相关资源
                                                    最近更新 更多