在NetBeans平臺應用程序中打包log4j配置文件顯然需要一些思考。這是我試過的...如何在NetBeans Platorm應用程序中打包log4j配置文件?
我把log4j.xml放在some_netbeans_module的src/main/resources/my/package/log4j.xml中。該包是一個公共模塊包(即來自該包的類是從其他包使用的)。我重建了模塊並確認該文件實際上已被打包到模塊中。
在我的課,我得到記錄器的實例,我一直做的方式:
static final Logger log = Logger.getLogger(ThisClass.class);
每一個NetBeans平臺應用程序有一個my_app.conf文件,這使得它可以設置某些屬性。這是我設置log4j.conf:
log4j.configuration="/my/package/log4j.xml"
現在,當我運行應用程序,我看到下面的輸出:
[INFO] /home/me/my_app/application/target/my_app/bin/../etc/my_app.conf: 5:
log4j.configuration=/my/package/log4j.xml: not found
有什麼不對上述配置?
今天晚些時候我會試一試,看看它給我帶來了什麼。不過我並不太樂觀:我找到了my_app.conf文件的樣本,它們完全像我一樣設置log4j.configuration參數。我發現這個方法如果可行,比在default_options中將其添加爲JVM屬性更簡潔一些。我絕對讚賞這個建議! –
當然。讓我們知道它是如何變成的 –
我修改了一下,發現/ my/package與我的/ package(無開始的斜槓)以及conf中的變量相同。文件不是系統屬性,而是真正的環境變量,這就是之前無法使用的原因。謝謝。 ;) –