我有下列方式加載資源庫:加載資源在服務器端失敗
BufferedReader r = new BufferedReader(
new InputStreamReader(classLoader.getResourceAsStream(String.format("%s.txt", filename)), "UTF8")
);
圖書館的測試運行正常。
之後,另一個webapp(spring-boot)將該庫用作依賴項(使用Maven)。但!如果我從Intellij運行該webapp - 工作正常。但是,當我把它上傳到服務器,或java -jar
本地運行它,它失敗:
Caused by: java.lang.NullPointerException: null
at java.io.Reader.<init>(Reader.java:78)
at java.io.InputStreamReader.<init>(InputStreamReader.java:97)
任何想法?
你用maven?或者你的建築工具是什麼?這是一個類路徑問題,在IDE中,IDE擁有自己的類路徑,並且會看到你的jar,但是當你將應用程序解壓到服務器時,如果它不是你的webapp類路徑,它會拋出異常。嘗試在命令提示符下構建您的Web應用程序。你會在當地看到同樣的問題。 – erhun
是的,我使用maven – nKognito
請在命令提示符下使用mvn clean install並檢查它是否工作或拋出異常。 – erhun