【发布时间】:2013-03-09 19:03:18
【问题描述】:
我在 NetBeans 中有一个应用程序,我正在尝试使用调试消息来记录方法调用,例如:
public class PersonService {
protected static Logger logger = Logger.getLogger(PersonService.class.getName());
public void add(Person person) {
logger.debug("PersonService.add called");
...
}
我的log4j配置文件在项目的WEB-INF文件夹中,如下:
log4j.rootLogger=DEBUG,console
#Console Appender
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=[%5p] [%t %d{hh:mm:ss}] (%F:%M:%L) %m%n
我知道这应该将调试消息打印到控制台,但到目前为止我什么也没得到。
我也在输出中收到这个:
log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader).
log4j:WARN Please initialize the log4j system properly.
有什么想法吗?
【问题讨论】:
-
您的应用程序是否找到了配置文件? WEB-INF 通常不在类路径中。如果找不到配置文件,则会将错误消息写入标准输出,您是否看到类似的内容?
-
我认为这可能是问题所在。如何告诉应用程序在哪里可以找到配置文件?有问题的消息详细信息。
-
我更喜欢使用
Logger.getLogger(PersonService.class)而不是Logger.getLogger(PersonService.class.getName())。
标签: java configuration log4j