0

我的项目的结构包含 3 个主要文件夹(如 1 中包含的 3 个项目)例如..

Main/java/..
Main1/java/..
Main2/java/..

在这 3 个模块中,源文件夹是 java,我的问题是如何使用 Main1 的 getResource 方法从 Main2 获取文件 url。使用 MyClass.getResource(/xxx/xxx/xxx) 指向 Main1 根目录。

提前致谢。

4

1 回答 1

2

正如javadocgetResource所说

将首先在父类加载器中搜索资源;如果 parent 为 null,则搜索虚拟机内置的类加载器的路径。如果失败,此方法将调用findResource(String)以查找资源。

所以,你应该在你的类路径中有来自 Main2 的类。另一种方法是实现你自己的ClassLoader,并实现findResource加载类的方法。将类放在类路径中似乎是更合理/更容易的方法(我个人认为弄乱CLassLoaders 通常不是一个好主意,除非你真的知道自己在做什么)。

于 2011-05-16T10:38:07.033 回答