這裏是我的Maven的結構:可執行的JAR找不到資源
project
---src
----main
----java
----App.java
----resources
----config.properties
這裏讀config.properties代碼:
private static final URL propFile = ClassLoader.getSystemResource("config.properties");
public App() throws IOException {
props.load(new FileInputStream(propFile.getFile()));
}
public static void main(String[] args) {
try {
App app = new App();
//Something interesting happens here
} catch (IOException e) {
e.printStackTrace();
}
}
當我運行java -jar MyApp-1.0.jar
,我收到FileNotFoundException
:
java.io.FileNotFoundException:file:/home/dragon/JavaProjects/MyApp/target/MyApp-1.0.jar!/config.pr operties(沒有這樣的文件或目錄)
它有什麼問題?
是的,這個效果很好。 但我不明白爲什麼Java不看我的基礎變體中的類文件夾。 – Dragon
@Dragon - 見編輯。您的應用程序已JAR,因此您將無法使用文件輸出流來檢索嵌入的資源。你可能只是問,而不是downvoting。 – Perception
現在我明白了。謝謝。 – Dragon