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

Ton*_*nis 2 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.
Run Code Online (Sandbox Code Playgroud)

因此,我将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
Run Code Online (Sandbox Code Playgroud)

解析度

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

谢谢大家,您的想法帮助我解决了这个问题,并且智能化了3.18%.

cut*_*hin 5

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