我已经通过Log4J documentation多次阅读并且我正在测试example given by mkyong,但无论我做什么,Log4J都会将输出放在我的控制台上。
这是当前档案:
# DRAGONS AHEAD
# Root logger option
log4j.rootLogger=debug, file
# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=/home/pedro/Desktop/log4j.txt
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
# END
# Print the date in ISO 8601 format
log4j.appender.stdout.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=application.log
log4j.appender.R.MaxFileSize=100KB
# Keep one backup file
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
我一直在想我做错了什么,但我看不出它是什么。有人能帮助我找到我做错的事吗?
答案 0 :(得分:0)
您是否确定此属性文件是在运行时加载的。您可以在运行时循环遍历loggers / appender以查看是否加载了此配置。
我唯一的建议是检查初始化log4j的方式。你在使用BasicConfigurator.configure(); ??那么你的属性设置就不会被加载。