java - 通过 .jar 文件使用时 Log4j 不显示行日志记录

标签 java ant jar log4j

我有一个使用 jar 文件的程序,该文件使用 log4j。 它的 log4j 属性包含以下模式:

[%-5p] (%d) %l : %m%n

当我的程序访问 jar 中执行日志的方法时,它会生成以下内容:

[INFO ] (2011-02-25 14:13:43,426) org.fractor.service.AppConfigService.getStringValueOf(?:?) : processing.user: root

我尝试包含 jar 文件的原始 src 文件夹,当我再次运行该程序时,它输出以下内容:

[INFO ] (2011-02-25 14:13:43,426) org.fractor.service.AppConfigService.getStringValueOf(AppConfigService.java:125) : processing.user: root

这看起来没问题,但是当创建包含使用 log4j 的 jar 的程序的 jar 文件时,它不包含 jar 的 src 文件夹,因此会出现错误。

是因为它只是引用了 jar 的 src 文件夹吗?我需要在 jar 中包含 jar 的 src 文件夹吗?看来此时使用 jar 是没有用的。

还有其他方法吗?谢谢。

最佳答案

听起来 jar 文件包含在没有调试信息的情况下编译的类。

正如您所发现的,这是非常理想的。我建议向负责构建 jar 的人员提交错误,然后如果可以的话自己重建它。如果没有,则包含 src 文件夹,但正确的 jar 更好。

关于java - 通过 .jar 文件使用时 Log4j 不显示行日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5114357/

相关文章:

java - Java方法中的字符串常量与变量

java - Eclipse PDE 构建/导出插件/功能/更新站点不支持文件编码 - 如何禁止重新编译

java - 资源未加载到小程序的 jar 文件中

java - Intellij 与项目构建一起创建工件 (JAR)

java - 在 netbeans 中的 java 项目中添加可执行 jar 文件

java - 在Spring中创建多对一关系的对象(非空属性引用 transient 值)

java 保存列表<JButton>

java - ant 失败未知参数 : -buildfile=build. xml

java - MongoDB:查询有隐式限制(256)?

java - Ant 项目包含多个要构建的文件夹