yas*_*sha 12 java log4j apache-commons-logging
我试图通过commons-logging使用log4j,如果log4j属性文件没有被称为log4.properties则会遇到问题.我收到以下错误:log4j:WARN没有找到记录器(LogMePlease)的appender.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!");
}
}
Run Code Online (Sandbox Code Playgroud)
在我的类路径中,我有: commons-logging.properties文件,其中包含以下条目
org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger
log4j.configuration=log4j-test.properties
Run Code Online (Sandbox Code Playgroud)
和 log4j-test.properties文件
当我运行这个代码时,我得到了
log4j:WARN No appenders could be found for logger (LogMePlease).
log4j:WARN Please initialize the log4j system properly.
Run Code Online (Sandbox Code Playgroud)
如果我将log4j-test.properties文件重命名为log4j.properties - 那么一切正常.所以,问题是如何设置公共日志记录以使用log4j.properties文件的任意名称.
Aar*_*lla 11
该文件commons-logging.properties仅从公共日志记录中读取,而log4j将log4j.configuration在系统属性中查找.
因此,您必须-Dlog4j.configuration=log4j-test.properties在命令行上将它们指定为JVM选项,或者必须System.setProperty()在第一次调用任何日志记录方法之前调用它(这通常很难实现).
注意:如果可以,请使用XML配置log4j.xml; 它对配置log4j更加简单和强大.
| 归档时间: |
|
| 查看次数: |
36182 次 |
| 最近记录: |