java - 失败 - 上下文路径中的应用程序/应用程序无法由 Tomcat Manager 6 启动

标签 java linux deployment tomcat6 catalina.out

我试图通过 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/

相关文章:

Java Regex - 解析函数名称和参数名称 - 抛出 PatternSyntaxException : Unclosed Character

java - 如何通过JDBC接口(interface)将UTF-8字符串正确写入MySQL

c++ - 使用外部 *.lib 文件进行 Qt 部署

deployment - Clickonce部署到多个环境

java - 将 T 作为参数传递给以在 Java 中有条件地创建泛型

linux - Arduino 无法从串口读取

c - git 的外部 shell cmd 源代码中的 execvp 调用返回 EFAULT(错误地址)errno,似乎仅在 64 位中。谷歌搜索什么也没透露

linux - 从 Jenkins 中运行的脚本通过远程 ssh 将文件内容分配给变量

asp.net - 零停机 ASP.NET 部署和 session 状态问题

java - 使用java创建数据库备份postgresql