现在有个项目 A,目录如下:
project |- src |- com |- test |-a.java |-conf |- test |- b.xml |-c.xml
我需要在 a.java 中加载 b.xml 和 c.xml。
在测试和使用的过程中,会有三种场景:
- 项目 A 本身内部代码的测试。
- 另一项目 B 在 IDE 上做对 A 的项目依赖,在 B 中使用。
- 项目 A 的编译后文件和 conf 目录一起打成 jar 包,导入另一项目 C 使用。
很明显,我需要的加载方式必须在这三种场景下都正常工作。
我研究和测试了一下 getResource() 方法,但似乎它对 conf 和 src(bin) 平级的方式无能为力?
请问我使用 getResource() 之前还需要做什么工作吗?比如将 conf/ 加入到 classpath?
1.首先肯定要把conf加入classpath。
2.打包jar后,在jar包内获取资源,最好用getResourceAsStream方法