![](/img/trans.png)
[英]FileNotFound exception while reading file from classpath in constructor argument in Spring
[英]FileNotFound Exception while reading file from resource directory
我正在嘗試使用以下代碼從資源目錄中讀取文件
new FileInputStream(new File(getClass().getClassLoader().getResource(keyFile).getFile()))
在運行時低於異常
java.io.FileNotFoundException:文件:\\ D:\\ WorkSpace \\ server \\ target \\ server.jar!\\ BOOT-INF \\ classes!\\ config \\ key.pgp(文件名,目錄名或卷標語法不正確)
在java.io.FileInputStream.open0(本地方法)
在java.io.FileInputStream.open(未知來源)
在java.io.FileInputStream。(未知源)
根據您試圖獲取的資源在jar中的位置,您應該使用相對路徑來獲取資源。 您也可以通過使用ResourceAsStream方法直接將資源作為InputStream來詢問來完全跳過File對象:
InputStream in = getClass().getResourceAsStream("/config/key.pgp");
由此:
java.io.FileNotFoundException:文件:\\ D:\\ WorkSpace \\ server \\ target \\ server.jar!
看起來代碼是從jar內部運行的,並且正在jar中尋找文件。
有兩個選擇:
1.)將文件添加到您的.class文件所在的jar中,並使用類路徑獲取文件(不要忘記開頭的/):/com/mycompany/myproject/files/myfile.txt
2.)使用文件的絕對路徑:“ D:\\ WorkSpace \\ server \\ target \\ BOOT-INF \\ classes \\ config \\ key.pgp”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.