他在那裏,從tomcat訪問jar文件
現在已經停留了一段時間。什麼即時通訊試圖做到這一點:
- 我已經開發了一個小的庫,我部署在一個jar文件的形式。它包含我需要訪問的文件,它位於「json2/json.js」(是,doin jscript/rhino東西)
- 我將jar文件導入經典的java-project,它工作正常。文件被發現,閱讀
- 我導入同一JAR文件到Tomcat的項目,如下所示:
- 調用Java的類我把我的庫中一個Java類
- 一個.JSP ,它位於在Tomcat/LIB-目錄
- 現在當我嘗試訪問我不能該文件(空指針)
來源:
InputStream in = ClassLoader.getSystemResourceAsStream("json2/json.js");
當我運行它內部的tomcat,(在== null)。
診斷我即興如下:
File fu = new File(new URI(this.getClass().getClassLoader().getResource("").toString()));
String[] l = fu.list();
for (int i = 0; i < l.length; i++) {
System.out.println(i+"||"+l[i]);
}
與經典的Java類僅能生產我的主類文件。在tomcat中它向我顯示了「tomcat/lib」目錄的內容。
有什麼想法?將不勝感激......
編輯
一個細節,我忘了添加(和真正研我的齒輪):
SParser.class.getClassLoader().getParent().getResource("")
與空PTR出現。跆拳道?即使沒有訪問特定的資源,仍然沒有結果。
你在哪裏把你的jar放在tomcat中?在您的應用程序的WEB-INF/lib中? – sudocode 2011-03-30 13:48:30
因此,json2/json.js位於tomcat/lib文件夾中的jar文件中? – 2011-03-30 13:49:03
jar文件位於tomcat/lib目錄中,裏面是文件(json2/json.js)。 – julian 2011-03-30 13:51:54