我的問題是,當我使用maven構建可執行jar(使用陰影插件)並嘗試運行罐子,我收到一個錯誤:運行可執行文件時,Java加載資源失敗maven jar文件:無法解析「file:/ ....」
java.io.IOException: Unable to resolve "file:/C:/Users/name/Desktop/nameofjar-SNAPSHOT.jar!/path/to/file.gz
當我運行Eclipse中的主程序,在GUI中正確加載資源文件。我打印的文件的目錄的輸出:
Loading parser from serialized file /C:/Users/name/git/guis/target/classes/path/to/file.gz
的IOException的在這行代碼發生:
URL url = SentenceParser.class.getResource("file.gz");
props.setProperty("file", url.getPath());
的file.gz位於的src /主/資源/路徑/要/file.gz並且該類在src/main/java/path/to的java src目錄中定義。
經過研究,我的問題幾乎完全像這個人的問題:java, loading of resources fails: unable to resolve file:/my-jar.jar!/folder/my-file。他們聲明他們必須具有文件的路徑才能放入屬性文件。我也需要文件的路徑,並且無法將資源作爲流獲取。我需要該路徑才能將該路徑添加到屬性文件,然後由外部庫讀取該文件。
可能重複[java,資源加載失敗:無法解析文件:/my-jar.jar!/ folder/my-file](http://stackoverflow.com/questions/20739266/java-loading- of-resources-fails-unable-to-resolve-file-my-jar-jar-folder-my) – Raedwald
如果您閱讀我的完整回覆,我說明了這一點。我正在尋找替代答案。 – user3191272