日志文件为空(log4j)

时间:2012-11-08 11:41:42

标签: java log4j

日志信息显示在控制台上,但不显示在日志文件中(文件已创建,但未添加任何内容)。怎么了?

来源:

package mytest;

import java.util.logging.Level; import java.util.logging.Logger;

import org.apache.log4j.PropertyConfigurator;

public class Main {     
    public static void main(String[] args) {        
        Logger log  = Logger.getLogger(Main.class.getName());
        log.setLevel(Level.ALL);        
        log.info("A line)");
        PropertyConfigurator.configure("log.properties");       
        log.info("Another line");   
    } 
}

log.properties文件:

log4j.rootLogger=debug, stdout, R

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n

log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=example.log

log4j.appender.R.MaxFileSize=100KB

log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n

1 个答案:

答案 0 :(得分:2)

你是混合的东西,java.util.logging和log4j。

您可以尝试将commonsLoggin与log4j

一起使用

http://commons.apache.org/logging/guide.html#Quick%20Start

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
...
Log log = LogFactory.getLog(getClass());