【发布时间】:2015-06-21 02:07:34
【问题描述】:
我有一个带有 my.package.Foo 类的 jar,里面包含 main 方法。
更重要的是,我将Log4j 配置为日志系统。
我想在捕获异常时打印完整的堆栈跟踪,但是我阅读了这个主题:log4j not printing the stacktrace for exceptions
我认为我需要使用-XX:-OmitStackTraceInFastThrow 标志。
所以我试图用这样的命令行调用我的应用程序:
java -XX:-OmitStackTraceInFastThrow -cp %JAR_LOCATION:% my.package.Foo
但是我仍然缺少堆栈跟踪,我只收到简短的异常消息。
这是我的 log4j 配置:
log4j.rootLogger=INFO, CONSOLE, FILE
log4j.appender.FILE=org.apache.log4j.FileAppender
log4j.appender.FILE.File=log.txt
log4j.appender.FILE.ImmediateFlush=true
log4j.appender.FILE.Threshold=debug
log4j.appender.FILE.Append=false
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%d{HH:mm:ss.SSS} %-4p %c{2}.%m%n
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{HH:mm:ss.SSS} %-4p %c{2}.%m%n
我错过了什么?
【问题讨论】:
标签: java batch-file log4j