log4j如何避免“未知来源”消息

时间:2012-01-06 10:45:10

标签: java log4j

使用我的java应用程序和log4j作为日志记录机制

对于第三方jar正在使用的大多数调试语句,我正在获取带有行号的文件名 com.abc.xyz.GG(的doFilter:67)

但是对于我的源代码,我得到以下内容 com.xyz.abc.class(未知来源问题)

由于没有行号信息,我很难调试我的源代码。

有人可以帮助我如何启用此功能....

提前致谢....

2 个答案:

答案 0 :(得分:2)

您是否使用javac的“-g:none”选项编译代码? 如果是这样,编译器不会生成任何调试信息,Log4j也无法获取它们。

答案 1 :(得分:1)

调用-g命令时,您需要传递javac选项。 从Oracle documentation

  

-g   生成所有调试信息,包括局部变量。默认情况下,仅生成行号和源文件信息。

如果您使用ant来构建项目,则需要将javac任务的debug属性设置为on,如下所示:

<javac debug="on">...</javac>