为什么tomcat找不到我的log4j.properties文件?

时间:2012-02-20 04:38:08

标签: java servlets classpath

我的网络应用似乎工作正常。我决定添加一些日志记录。当我部署war文件时,应用程序失败并出现异常,因为tomcat不知道log4j.jar。

我将jar添加到WEB-INF / lib文件夹并重新部署。例外消失了。这让我知道WEB-INF / lib在类路径上。

但是,现在logs / catalina.out有以下典型错误消息:

log4j:WARN No appenders could be found for logger (com.this.that.Validate).
log4j:WARN Please initialize the log4j system properly.

因此,我将log4j.properties文件复制到WEB-INF / lib文件夹中。

log4j警告仍会显示,据我所知,没有记录任何内容。

我很欣赏有关解决这个问题的一些指导。我在追我的尾巴。


更新

我相信我的第一个问题已经解决 - 我不再收到警告信息。我认为发生的事情是我在爆炸文件层次结构中有一个带有pwd的unix shell,这阻止了Tomcat成功删除旧项目。


的log4j

我的log4j.properties文件是

log4j.rootLogger=DEBUG, FILE

log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.File=prog1.log

log4j.appender.FILE.MaxFileSize=100KB
# Keep one backup file
log4j.appender.FILE.MaxBackupIndex=1

log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=%p %t %c - %m%n

分辨率

我将'log4j.appender.FILE.File = prog1.log'行更改为具有tomcat日志记录文件夹的显式路径。

谢谢大家,您的想法帮助我解决了这个问题,并且让智商变得更加智能。

1 个答案:

答案 0 :(得分:5)

将log4j.properties复制到WEB-INF / classes。