我有以下源结构
/src/main/java
/src/main/resources
/src/main/resources/stuff
/src/main/resources/stuff/1.txt
/src/main/resources/stuff/2.txt
在我的代码中,我通过以下方式访问stuff文件夹中的文件:
ClassLoader.class.getResource("/stuff/1.txt").getFile()
部署它时,它的部署方式如下:
/
/lib
/lib/my-app.jar
/lib/other.jar
/lib/stuff
目前我的类路径设置为:lib/*
但我无法按照上述方式解析lib/stuff/1.txt
。我需要在类路径上设置什么才能使上述代码生效?
答案 0 :(得分:0)
如this blog中所指出的那样,使用相对和绝对路径可能有所不同。
ClassLoader.class.getResource("lib/stuff/1.txt").getFile()
正如@Gimby指出的那样,使用getResourseAsStream()
会更有效率。