2011-09-26 47 views
2

我想在java桌面应用程序中使用log4j日志框架。在哪里把log4j.properties-用于java桌面应用程序

当我运行的代码我得到一个消息

log4j: log4j:WARN No appenders could be found for logger 

我GOOGLE了上述错误,并发现当log4j.properties文件不被应用发现它发生。

我正在使用Eclipse创建桌面应用程序。目前,log4j.properties位于包含源文件的同一文件夹中(在'src'文件夹中)。我应该把这个文件放在哪里才能正常工作?

回答

3

log4j将使用Default Initialization Procedure来查找您的配置文件。文档注释:

指定默认初始化文件的首选方式是通过log4j.configuration系统属性

如果未设置此属性 - 的log4j将着眼于classpath中。在你的情况下,你必须将文件放在src目录中(假设在构建系统时内容将被放入类路径中)。如果你使用maven把文件放到src/main/resources目录下。

当你将你的文件放到src目录下时,检查文件是否被转移到编译类的顶层目录。

+0

有一个允许输出源文件夹的输出文件夹的配置,我必须根据需要选择它(在Eclipse-> Project Settings中的Java Build Path中)...之后,log4j.properties文件(在src中)被选中up和log4j现在可以正常工作,没有任何问题。非常感谢你的帮助... – user893664

0

将属性文件保留在classes文件夹中,即包含类(特别是主类)的文件夹。
获取此错误的另一个原因可能是没有设置的错误appender或appender。

+0

@ Naved-好的,我的应用程序中的主类是com.arvind.gdata。(在src/com/arvind /中)...所以我应该把属性文件放在src/com/arvind/??谢谢... – user893664

+0

把它放在.class文件所在的文件夹中,就像classes/com/arvind/gdata一样。 – Naved