我花了最近2个小时才在IntelliJ IDEA类路径中添加属性文件。我是一名Eclipse用户,发现我无法在IDEA中做到这一点令人尴尬。我的IntelliJ IDEA项目中有一个.properties文件,它已添加到类路径中,但仍然在运行时我得到的异常是文件不存在。
我已按照此问题中的所有答案Add a properties file to IntelliJ's classpath
我做了以下事情: -
1) 转到项目结构。 选择你的模块。 在右侧的树中找到该文件夹并选择它。 单击该树上方的“源”按钮(使用蓝色文件夹),使该文件夹成为源文件夹。
2)我检查过settings-> compiler->资源模式是否包含?*。properties
3)我在pom.xml中添加了以下标记
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</build>
有人可以帮助我吗?
进一步更新。这是一个maven web应用程序项目。我试图访问我的servlet中的.properties文件。我的servlet位于src / main / java / some_package中,我的.properties文件位于src / main / resources / some_package中。
try {
Properties prop = new Properties();
InputStream input = null;
try {
input = new FileInputStream("package\\myProperty.properties");
// load a properties file
prop.load(input);
// get the property value and print it out
System.out.println("reading the property file " );
System.out.println("prop1 =" + prop.getProperty("prop1"));
System.out.println("prop2 = " + prop.getProperty("prop2"));
} catch (IOException ex) {
ex.printStackTrace();
} finally {
if (input != null) {
try {
input.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
答案 0 :(得分:1)
我发现在查找文件名时不应该提及.properties IF文件说abc.properties然后只查找abc而不是abc.properties
答案 1 :(得分:0)
通常,将正确的目录标记为源目录确实可以解决问题,但是我发现还有另一个重要的细节。您需要确保正确设置了工作目录(可以在“运行配置”中找到)。在我的项目中,由于某种原因将其设置为错误的目录,并且由于Java试图在工作目录中查找* .properties文件(除非您在代码中指定了绝对路径),所以我的属性中的client.properties并非为“找不到-它只是在“错误的”工作目录中不存在。
P.S。我是一个经验很少的初级开发人员,这是我的第一个答案,因此我可能没有完美和/或正确地描述所有内容,但是我花了2个多小时来弄清楚为什么我的属性文件未加载,所以我希望这对处于同样困境的人有所帮助。编码愉快:)