2015-03-02 224 views
0

我創建了一個包含從我的web應用程序的類路徑加載外部資源文件的類的jar。我的應用程序運行在樹脂服務器上。我已經在web-inf/lib中部署了我的jar,並且我的資源文件位於web-inf/classes文件夾中。現在正在使用資源文件在jar外部加載資源文件

getClass()。getResourceAsStream(「/ resource-name.json」);

但是,當我運行它時,應用程序會拋出一個空指針異常。任何人都可以向我解釋爲什麼我的類加載器無法找到位於web-inf/classes文件夾中的這個資源文件?我搜索了這個論壇,但沒有發現像我這裏的問題。

和往常一樣,我感謝您的回覆,並感謝您。

回答

1

探討,首先嚐試打印所有地點在您ClassLoader嘗試加載類/資源:

((URLClassLoader) getClass().getClassLoader()).getURLs(); 

假設辭職的ClassLoader延伸URLClassLoader。它應該包含你的文件夾。

+0

謝謝Crazhack。你的提示幫助。我會將它標記爲答案,因爲它指導我解決這個問題,web-inf/classes確實在樹脂類路徑中。該錯誤最終證明是我的資源文件命名不正確。 – user1639616 2015-03-03 21:46:53