【发布时间】:2015-05-05 06:18:14
【问题描述】:
我不知道如何在使用 maven 时正确地从 java 访问文件。我知道还有很多其他问题/答案与此非常相似,但我无法让其中任何一个为我工作。
现在我在这个目录中有我希望用来打开数据文件的代码文件:
maven_project/src/main/java/project/package/source_file.java
在 pom.xml 中我包含如下资源:
<build>
<resources>
<resource>
<directory>src/main/resources/question_contents</directory>
<includes>
<include>*.json</include>
</includes>
</resource>
</resources>
</build>
资源文件被正确复制到
maven_project/target/classes
我现在用来构建的命令是
mvn package
如果重要的话,我正在使用 linux
我愿意更改此设置的任何方面以打开文件。
我更愿意以FileInputStream 的形式打开它们,但我可以处理任何事情。
任何帮助将不胜感激。
更新
我尝试了建议的重复问题中的答案,但仍然没有运气。我之前没有想到的是,这是在抽象类的方法中完成的,不知道这会对this 的引用产生什么影响。
我也知道这在某一时刻有效。在将所有内容移至 maven 之前,我将所有内容都集中在一个文件夹中,没有任何问题。
【问题讨论】:
-
为什么要添加已经默认的资源配置所以不需要这样做。