0

我目前正在研究一个使用弹簧的项目。对于 Junit,我正在使用 @RunWith(SpringJUnit4ClassRunner.class) 注释。一切工作正常,除了我没有看到 applicationContext 的 spring 处理的任何日志。在控制台窗口中,这是一条当前消息:

log4j:WARN No appenders could be found for logger (org.springframework.test.context.support.DefaultTestContextBootstrapper).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

我将 log4j.properties 保存在 Eclipse 的 src/main/resources 文件夹中(使用 maven 项目)。以下是内容:

Log4j.properties ;

# Root logger option
log4j.rootLogger=INFO

log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%p\t%d{ISO8601}\t%r\t%c
\t[%t]\t%m%n

已经查看了关于类似问题的 Q/A。但仍然不知道是什么问题。这里有人可以帮我吗?

谢谢

4

1 回答 1

0

您需要将 log4j 属性的存储位置指定为 spring 应用程序的上下文参数。您可以通过在 web.xml 中添加以下部分来完成。确保将 log4j.properties 文件捆绑在 /WEB-INF/classes/ 目录中。

<context-param>
    <param-name>log4jConfigLocation</param-name>
    <param-value>/WEB-INF/classes/log4j.properties</param-value>
</context-param>

<listener>
    <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
于 2015-04-29T02:27:52.490 回答