我正在使用maven 2.1.0,并且有一个包含多个模块的项目.
示例模块:
> SPR资源
>常见
spr-common依赖于spr-resources
spr-resources仅包含文件,不包含类.
spr-common有一个junit,它需要从spr-resources jar中加载文件.
我用了:
String fileName = getClass().getResource("/jaskeyfile.3DES").getFile();
is = getClass().getClassLoader().getResourceAsStream(fileName);
is.read(data);
当我在IntelliJ中运行测试时,此方法有效,但是当我执行mvn测试时,当我尝试对其执行read()时,它将失败并显示NullPointerException.
为什么会这样呢?它应该可以从依赖项读取文件.
另外,spr-common中的pom.xml依赖于spr-resources(在使用范围测试和不使用范围测试的情况下都进行了尝试)
编辑:
我也尝试过
getClass().getClassLoader().getResourceAsStream("/jaskeyfile.3DES");
没有运气.
编辑2:
给定的文件存在于生成的jar中,因此我想它应该可以访问.