我有一个log4j.properties文件:
# Root logger option
log4j.rootLogger=WARN, stdout, file
# Redirect log messages to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
# Redirect log messages to a log file, support file rolling.
log4j.appender.file.append=false
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=log/pure-pentaho.log
log4j.appender.file.MaxFileSize=5MB
log4j.appender.file.MaxBackupIndex=10
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
这个工作正常,直到我包含bsf-2.4.0.jar库,然后我的所有记录停止。
所以我猜这个库以某种方式覆盖了我的记录器,我怎样才能让它再次恢复记录?
好的,正如建议的那样,我将路径添加为命令行选项,它可以工作:
java -Dlog4j.configuration=file:./run/log4j.properties -cp ./lib/*:./run myApp &
答案 0 :(得分:1)
似乎在类路径中有多个log4j.properties文件,并且log4j没有接收到你的文件。
您可以重命名文件,添加JVM参数以指定所需文件。
-Dlog4j.configuration=/home/user/mylog4j.properties
要在Eclipse上设置JVM参数,请右键单击项目>以>运行运行配置...>参数> VM参数