2010-08-09 15 views
2

請原諒,如果這是一個微不足道的問題。Java: - log4j - 如何使定製jar包使用相同的log4j設置爲主應用程序

我有一個使用log4j的主應用程序,並且有一個GUI界面在運行時更改日誌級別。我無法觸及主應用程序。我正在構建一個簡單的將應用程序連接到外部系統的包(jar)。現在我需要有一個我正在構建的jar來使用與將調用jar文件中的API的主應用程序相同的log4j設置,即jar文件中的代碼將具有log4j日誌語句,從調用它的主應用程序啓動(這樣,主應用程序中的任何運行時更改爲日誌級別也會反映在jar API日誌語句中)。日誌需要與主應用程序的日誌一致。

在此先感謝。

回答

0

如果您的庫不修改日誌記錄級別,那麼庫的日誌記錄行爲將由主程序確定,即所有內容都應該正常工作。

跟着these instructions讓主程序決定你的軟件包的其餘部分。

關於如何獲取與應用程序關聯的資源(例如,屬性文件),請參考these instructions

+0

嗨,對不起,延遲迴應..例如 - 這是我現在在我的圖書館。在課程開始時: private Logger _logger = Logger.getLogger(this.getClass()); 然後在方法中,我只是添加調試,警告,信息陳述。我是否必須在我的庫中有一個log4j屬性文件(我是否必須單獨在我的庫中初始化記錄器參數)?我嘗試沒有一個,並將該jar文件添加到Manifest.MF中的「Bundle-ClassPath」,但它沒有奏效。它說沒有找到appender: log4j:WARN記錄器(com.Test.MyTest)找不到appender。 謝謝 – Infinity 2010-08-23 15:37:56

相關問題