我试图通过 tomcat 管理器 6 部署一个 war 文件。部署后总是一样 错误 : FAIL - 上下文路径/App 中的应用程序无法启动
war 文件在 apache-tomcat-6.0.0/webapps 文件夹下。
我在谷歌上搜索并尝试了不同的选项,例如:
正在删除 apache-tomcat-6.0.0/work/Catalina/localhost 文件夹以及 apache-tomcat-6.0.0/webapps/App 重新启动服务器并重新部署。
正如我在 catalinalog 文件中看到的:
INFO: Deploying web application archive App.war
3:32:47 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
2012 3:32:47 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/App] startup failed due to previous errors
2012 3:32:50 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
2012 3:32:50 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/App] startup failed due to previous errors
有什么想法吗?
最佳答案
在 WAR 中的“/WEB-INF/classes”目录下添加一个“log4j.properties”文件,以帮助调试哪个监听器抛出此错误。
这适用于 Tomcat 版本 < 6.0
在 Tomcat 6 或更高版本中,默认记录器是“java.util.logging”记录器而不是 Log4J。因此,如果您尝试添加“log4j.properties”文件——这将不起作用。 Java 实用程序记录器查找名为“logging.properties”的文件,如下所述: http://tomcat.apache.org/tomcat-6.0-doc/logging.html
因此,要了解调试细节,请在 WAR 的“/WEB-INF/classes”文件夹下创建一个“logging.properties”文件,一切就绪。
现在,当您重新启动您的 Tomcat 时,您将看到所有的调试都在它的光辉中!!!
示例 logging.properties 文件:
org.apache.catalina.core.ContainerBase.[Catalina].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].handlers = java.util.logging.ConsoleHandler
您很可能会看到“ClassNotFound”异常。
关于java - 失败 - 上下文路径中的应用程序/应用程序无法由 Tomcat Manager 6 启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12820921/