我正在尝试将log4j用于我正在使用Netbeans IDE 6.9.1开发的Java桌面应用程序。我在META-INF文件夹中有log4j.properties文件,用于在开发过程中进行日志记录。我还尝试将它与可执行jar放在一起(在安装之后),但它们都不起作用。当我调用这个方法时,它也会抛出异常。
PropertyConfigurator.configure(filepath);并且无论log.properties文件的位置如何,它都会抛出此异常
java.io.FileNotFoundException: META-INF\log4j.properties (The system cannot find the path specified)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at java.io.FileInputStream.<init>(FileInputStream.java:66)
at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:306)
at org.apache.log4j.PropertyConfigurator.configure(PropertyConfigurator.java:324)
at fi.xmldation.common.SharedMethods.readSettingsFile(SharedMethods.java:43)是IDE中的bug,还是我做错了什么?
发布于 2011-04-04 21:21:07
如果我从属性文件中加载属性,它就会起作用
PropertyConfigurator.configure((new Properties()).load(new FileInputStream ("log4j.properties")));发布于 2011-04-04 18:53:24
如果使用诸如NetBeans之类的集成开发环境运行程序,请额外检查文件是否位于集成开发环境的输出目录中。通常,log4j会在类路径中查找该文件,因此您必须确保NetBeans确实将其复制到该路径。您的集成开发环境很可能会将自己的输出目录设置为类路径的一部分,因此我认为您在这里(至少)有两个选择:要么将放置log4j.properties的目录添加到类路径中,要么确保将其复制到集成开发环境的输出目录中。祝好运!
https://stackoverflow.com/questions/5536096
复制相似问题