我有一个与jUnit一起使用的第三方库,但是没有一次部署到tomcat。深入研究代码,我可以看到它失败了:
final String path = "/api-version.dat";
final InputStream stream = ClassLoader.class.getResourceAsStream(path);
api-version.dat位于jUnit测试中,但在Tomcat上执行相同操作会导致NullPointerException
,因为Tomcat无法获取api-version文件。此文件存在,它位于第三方jar内。到目前为止我尝试了什么:
有什么想法吗?
答案 0 :(得分:1)
在Java EE环境中使用:
final InputStream stream = Thread.currentThread()
.getContextClassLoader()
.getResourceAsStream(path);
在Difference between thread's context class loader and normal classloader中查看更多内容。