我正在使用 log4j 在我的 Web 应用程序中记录信息。我选择了 log4j.xml 类型的配置而不是 log4j.properties。我记得,对于 log4j.properties 配置,我没有编写 Java 代码行来查找 log4j.property 文件位置。但是,对于 log4j.xml 文件配置,我明确指定要像这样找到它
DOMConfigurator.configure("log4j.xml");//it reads file from classpath, working!
此外,测试了我的应用程序从源代码中删除了上述语句。它看起来不起作用。没有打印任何调试语句,除了
System.out.println();
我已经阅读了 log4j 默认在类路径中查找 log4jproperties 文件或 log4j.xml 文件。我签入了已部署的 Web 应用程序,log4j.xml 文件位于 web-inf/classes 中。即使它找不到 log4j.xml。
是不是,上面的代码行对于 Java 中的 log4j xml 配置是强制性的?事实上,如果没有上面的明确说明,Java 源代码不能从类路径中提取 log4j.xml 吗?