繁体   English   中英

如何从依赖 Maven 模块加载资源

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM