0

我有两个独立的项目 A 和 B 都是使用 maven 构建的。B项目更像是一个资源项目。我正在使用 maven 为这个项目打包 jar。

现在对于项目 A,我将项目 B 的 jar 添加为依赖项。我将如何能够在项目 A 中的一些 java 文件中访问项目 B 的 jar 中的资源文件。

我已经确认项目 B 的 jar 已安装在 Maven 的本地存储库中。

我搜索了很多,但似乎没有一个答案有帮助。

以下是目录结构

src |_ main |_ 资源 |_ dir1 |_ dir2 |_ dir3 |_ Some_config_file.txt

我想从项目 A 访问这个 Some_config_file.txt,我怎样才能找到相对于类路径的路径

任何帮助/建议?

4

1 回答 1

0

是的,来自的所有文件src/main/resources都是最终 JAR 的一部分,并且它们与类位于相同的路径中。换句话说,您将降落在已编译的课程_Some_config_file.txt旁边。_dir1._dir2._dir3.Foo.class

所有这些项目都放置在平面 CLASSPATH 上,即每个 JAR 的内容在 CLASSPATH 上共享相同的名称空间。为了读取此类文件,您需要使用ClassLoader

getClass().getResourceAsStream("/_dir1/_dir2/_dir3/_Some_config_file.txt`);
于 2013-01-18T19:25:04.210 回答