java - 访问具有 log4j 支持的 jar 时未生成日志文件

标签 java log4j

我有一个 x.jar,某些客户端 y.jar 正在使用它。 x.jar 和 y.jar 以及 log4j.xml 都处于同一包级别。

但是日志文件永远不会生成。我能知道为什么吗?

我也尝试过其他一些选择,但到目前为止还没有运气。

1) 我已将 log4j-1.2.16.jar 添加到 ClassPath: x.jar 和 y.jar list 文件中的变量。

2) 将 log4j.xml 放在 y.jar 的类级别,它实际上调用 x.jar 类。

包结构如下:

x.jar

--manifest.mf 有一个条目 ClassPath:log4j-1.2.16.jar

y.jar --manifest.mf 有一个条目 ClassPath:log4j-1.2.16.jar

log4j-1.2.16.jar

log4j.xml -- 有一个 RollingFileAppender。

有人可以建议我是否遗漏了什么吗?

谢谢

纳文·加里梅拉。

最佳答案

运行 JAR 时,您需要使用 java 属性 -Dlog4j.configuration=pathToYourLog4jConfigFile 声明 log4j 配置文件的路径:

java -jar -Dlog4j.configuration=file:log4j.xml my.package.MyClass

您还可以尝试使用此处解释的内容来避免这种情况:

http://blog.blip.tv/blog/2005/07/24/log4jxml-inside-your-jar/

关于java - 访问具有 log4j 支持的 jar 时未生成日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2893412/

相关文章:

java - 如何用LWUIT解决本地化问题

java - java中的OpenCV Mat对象序列化

jakarta-ee - LOG4J - EAR 中不同 war 的独立日志文件

java - 如何在 pom.xml 中设置类路径?

java - 无法检测 adb 版本,退出值 : 0xc0000135

java - 在 Java 中获取结果 URL

删除目录时的 Java Ant 性能

java - 使用 log4j 在 java 中进行参数化日志记录时出现错误

java - 如何使用 slf4j 和不同的日志实用程序设置 4 个 Maven 项目?

java - 使用 log4j JsonLayout 记录 JSON 对象