2011-09-26 88 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