1
我正在使用classpathresource
來獲取文件的資源。在我的代碼中指定路徑,以便從那裏選取文件。但是它將一個已經存在於前一個jar中的同名文件取出。在類路徑資源中指定文件
即 我已指定,
ClassPathResource resource = new ClassPathResource("/sw/merlot/config/log4j.xml")
其中log4j.xml
是配置文件。
但其採取log4j.xml
其是在一個罐子 - sw/merlot/lib/keyManager.jar!/log4j.xml
(兩者log4j.xml
是不同的[2個不同的配置文件])
所以我改成了,
ClassPathResource resource = new ClassPathResource("file:///sw/merlot/config/log4j.xml")
但它仍然不起作用。
我不知道我指定文件的方式是否正確?
我也嘗試使用jar指定文件。
ClassPathResource resource = new ClassPathResource("jar:file:///sw/merlot/lib/keyManager111.jar!/log4j.xml")
其中keyManager111.jar
包含我希望我的log4j.xml
。但它仍然沒有從罐子裏挑選。它在指定位置找不到指示文件。
只需創建一個'ClassPathResource'不會做自己的事情。你在做什麼? – skaffman 2011-05-02 10:44:04
正在獲取指定文件的資源並將其用作其他進程的輸入流。 – indira 2011-05-02 10:49:34
我會嘗試退後一步,並從庫中刪除log4j.xml。根據經驗,沒有庫應該包含日誌配置,這是客戶端的責任。 (我假設你擁有KeyManager.jar) – Augusto 2011-05-02 10:50:49