2017-09-26 105 views
0

我需要讀取jar之外的xml文件。我不想使用相對路徑。這是unix盒子上的絕對路徑。據我所知,我猜想有兩種方法: - 1)更改jar的清單文件並在類路徑中添加該位置。在這種情況下,我可以使用getResource()? 2)硬編碼getResourceAsStream()中的路徑。我的路徑是這樣的「/usr/local/folder1/folder2/」。我讀了我不能使用getResource()來獲取classpath之外的任何東西,我需要使用getResourceAsStream()。在java中讀取jar外的xml文件

哪種方法是更好的方法?

+1

的可能的複製[閱讀屬性文件以外的JAR文件(https://stackoverflow.com/questions/34108412/reading-file-right-outside-jar) –

+0

上面的鏈接不應答具體的問題,我有。謝謝! – user911

回答

1

是的,getResourceAsStreamgetResource都依賴於加載類或引導類的類加載器可見的路徑。如果你想使用絕對路徑,只需使用FileInputStream

InputStream inputStream = new FileInputStream("/usr/local/folder1/folder2/myxml.xml");