0
一個XML文件添加到類路徑中的以下情形:通過引導類路徑
我延長的編譯成可運行罐子小服務系統的管理工具。這些服務在他們的類路徑中使用xml配置來執行許多任務。
我現在想從編譯的jar文件中提取配置文件,如db配置,並將它們動態添加到類路徑中。到目前爲止,如果您想更改數據庫的設置,那麼您需要重新編譯整個套件,這是各種不好的imho。
我曾嘗試:
java -Xbootclasspath/p:/path/db.xml java -jar Foo.jar
- 這導致了Java虛擬機錯誤 - 這似乎並沒有做任何事情,我試圖找到通過在classpath下面的腳本的XML文件,但我一直未能。該XML直接位於罈子(帶jar cvMf db.jar db.xml
創建)
我使用的腳本中:
ZipFile zf;
ZipFile zf;
try{
zf = new ZipFile("Foo.jar");
} catch(final ZipException e){
throw new Error(e);
} catch(final IOException e){
throw new Error(e);
}
final Enumeration e = zf.entries();
while(e.hasMoreElements()){
final ZipEntry ze = (ZipEntry) e.nextElement();
final String fileName = ze.getName();
final boolean accept = Pattern.compile(".*(xml)").matcher(fileName).matches();
if(accept){
log.debug(fileName);
}
}
我希望有人能幫助解決這個問題,我就還有什麼我可以嘗試是很笨。
那麼你想引用jar裏面的xml文件?如果是這樣你可以加載類路徑中的資源描述http://stackoverflow.com/questions/3294196/load-resource-from-anywhere-in-classpath – 2014-12-03 20:12:02
你不能使用-classpath和-jar一起。編輯:再次,bootclasspath arguemnt似乎並沒有將jar的內容添加到我的類路徑中 – minime 2014-12-03 20:25:57