java – commons-logging和log4j属性文件

前端之家收集整理的这篇文章主要介绍了java – commons-logging和log4j属性文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图通过commons-logging使用log4j,如果log4j属性文件不被称为log4.properties,则会遇到问题.
我得到以下错误
log4j:WARN没有找到记录器的追加者(LogMePlease).
log4j:WARN请正确初始化log4j系统.

我的代码很简单:

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

public class LogMePlease 
{
static Log l = LogFactory.getLog(LogMePlease.class);

public static void main(String [] args)
{
    l.warn("Hello World!");
}
}

在我的课程路上,我有:
commons-logging.properties文件包含以下条目

org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger
log4j.configuration=log4j-test.properties


log4j-test.properties文件

当我运行这个代码我得到

log4j:WARN No appenders could be found for logger (LogMePlease).
log4j:WARN Please initialize the log4j system properly.

如果我将log4j-test.properties文件重命名为log4j.properties,那么一切正常.
所以,问题是如何设置公用日志记录以使用log4j.properties文件的任意名称.

解决方法

文件commons-logging.properties只能从公用日志记录中读取,而log4j将在系统属性中查找log4j.configuration.

因此,您必须在命令行中使用-Dlog4j.configuration = log4j-test.properties指定它们作为JVM选项,或者在首次调用任何日志记录方法(通常很难实现)之前必须调用System.setProperty() ).

注意:如果可以,使用XML配置log4j.xml;它对于配置log4j要简单而强大.

猜你在找的Java相关文章