[英]How to load resource from a dependency maven module
我在src/main/java
有一个带有 java 类的 maven 模块BaseProject 。 一些类正在从src/main/resource
文件夹加载 xml 文件。 这很好用。
我有第二个 maven 项目TestProject ,它使用BaseProject作为依赖项。 TestProject是我的 JUnit 测试项目,所以只有在src/test/java
有类。
如果我使用来自BaseProject 的一些加载任何资源的类,我会得到一个null
因为找不到资源文件。
我假设在这种情况下,我的TestProject中的src/main/resource
文件夹被视为查找资源文件的地方。
那么我如何加载BaseProject中的资源文件,使其始终位于其自己的src/main/resource
文件夹中?
这是我目前的做法:
InputStream inputStream = MyBaseClass.class
.getResourceAsStream(
"foo/bar/hello.xml" );
String content = new Scanner( inputStream, "UTF-8" ).useDelimiter( "\\Z" ).next();
getResourceAsStream("path")
从当前类中相对查找资源。 如果foo.bar
是完整的包名,则应使用绝对路径getResourceAsStream("/foo/bar/hello.xml")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.