Java Tomcat上spring MVC应用程序的Log4j配置

Java Tomcat上spring MVC应用程序的Log4j配置,java,spring,tomcat,log4j,Java,Spring,Tomcat,Log4j,我一直在开发一个简单的SpringMVC应用程序作为报告服务。在本地,我一直使用maven-tomcat插件运行应用程序,使用的是mvn-tomcat:run。这完全符合预期。但是,我现在正试图将此服务部署到运行Tomcat6的服务器上。我将war文件加载到webapps目录中,Tomcat发现并部署了它,然后抱怨: log4j:WARN No appenders could be found for logger (org.springframework.web.filter.Characte

我一直在开发一个简单的SpringMVC应用程序作为报告服务。在本地,我一直使用maven-tomcat插件运行应用程序,使用的是
mvn-tomcat:run
。这完全符合预期。但是,我现在正试图将此服务部署到运行Tomcat6的服务器上。我将war文件加载到webapps目录中,Tomcat发现并部署了它,然后抱怨:

log4j:WARN No appenders could be found for logger
(org.springframework.web.filter.CharacterEncodingFilter).

log4j:WARN Please initialize the log4j system properly.
而且,毫不奇怪,服务的日志记录不起作用

我不清楚上面的错误信息,不知道是否有人能给我一些帮助

对于后代,我有一个非常简单的log4j.properties文件(位于
/src/main/resources
):

我目前的假设是tomcat box可能根本看不到这个属性包,但我不确定。通过将bundle热拷贝到
WEB-INF/classes
,并得到适当的结果,我得以证实这一假设。什么是既在类路径上又不在陌生位置的正确位置


非常感谢您的指导。

如果您希望自动获取
log4j.properties
文件,我认为它需要位于类路径中。我通常将它放在Tomcat的Lib文件夹或war的Lib文件夹中。

我认为,如果希望自动拾取
log4j.properties
文件,那么它需要位于类路径中。我通常将其放在Tomcat的Lib文件夹或war的Lib文件夹中。

Maven在mvn生命周期的
编译
阶段将资源文件从
/src/main/resources
复制到
/WEB-INF/classes
。使用命令
mvn war:war
不会复制这些资源,因此您必须执行
mvn编译war:war
,以便应用程序可以使用这些资源。

Maven在mvn生命周期的
编译
阶段将资源文件从
/src/main/resources
复制到
/WEB-INF/classes
。使用命令
mvn war:war
不会复制这些资源,因此您必须执行
mvn编译war:war
,才能为应用程序提供可用的资源。

我尝试将其放在
src/main/webapp/WEB-INF/lib
中,但它似乎不起作用,所以继续沿着这条路走下去(这对我来说确实有点味道),我将包热拷贝到
WEB-INF/classes/
dir中。当我这么做的时候,tomcat发现这个包裹很好。怪异?src树中的目录不在WAR文件的类路径中。@DwB它是一个Maven项目;
/src/main/resources
中的资源被复制到类目录中。我尝试将其放入
src/main/webapp/WEB-INF/lib
,但它似乎不起作用,所以继续沿着这条路径(对我来说肯定有点异味),我将捆绑包热复制到
WEB-INF/classes/
目录中。当我这么做的时候,tomcat发现这个包裹很好。怪异?src树中的目录不在WAR文件的类路径中。@DwB它是一个Maven项目;
/src/main/resources
中的资源被复制到类目录中。您是否确认属性文件位于war文件中的
/WEB-INF/classes
中?您是否确认属性文件位于war文件中的
/WEB-INF/classes
中?
log4j.rootLogger=WARN, console

log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern= %d{HH:mm:ss,SSS} [%t] %-5p %x %C{1} : %m%n

log4j.logger.com.rtr=DEBUG