我在服务器的类路径中有一个jar,它包含jar根目录下的log4j.properties文件,用于记录代码.当jar中的代码运行时,代码的日志记录不会发生.当我使用java -Dlog4j.debug选项分析问题时,我知道log4j正在加载axis-ant.jar的log4j.properties文件(这也在我的类路径中)并使用它代替我的jar的属性文件.
当我随后从类路径中删除了axis-ant.jar时,我的jars log4j.properties文件立即被选中并记录了我的代码.
有人可以解释为什么我的log4j.properties没有被加载而axis-ant.jar存在?
令人惊讶的是,类路径中存在的带有axis-ant.jar的jar正在另一台服务器上成功运行并正确运行..服务器都安装了相同的java 5版本和相同版本的log4j jar