0

从 apache log4j 观察到一个相当奇怪的行为,并通过思想分享来获得你的想法。

我有一个使用脚本运行的应用程序。到目前为止,没有什么特别的。但是我使用该脚本设置的 CLASSPATH,比如目录/home/myName/,有两个不同的 log4j 属性文件。一个是简单的log4j.properties,另一个是log4jXYZ.prperties

奇怪的是,当我从不同的目录运行这个脚本时,一个或另一个 log4j 属性文件正在被拾取。我的理解是它应该选择 log4j.properties,显然无论我从哪里运行脚本。

你有没有看到一些可以理解它的逻辑。目前我很茫然。

我可以预测的是 log4j 正在尝试任何匹配 lo4j*.properties 表达式的文件。我必须承认我没有阅读所有帮助 log4j 的手册。

4

1 回答 1

1

添加 log4j.debug 属性,当您运行应用程序(-Dlog4j.debug=对于 java 命令)时,它应该向您显示加载配置文件的路径。

我怀疑它可能会从另一个目录加载同名的文件,而不是你想象的。

于 2012-12-14T14:50:16.437 回答