Intellij idea 在intellij idea类路径中找不到属性文件

Intellij idea 在intellij idea类路径中找不到属性文件,intellij-idea,properties-file,Intellij Idea,Properties File,我花了2个小时在IntelliJ IDEA类路径中添加了一个属性文件。我是一个Eclipse用户,在IDEA中无法做到这一点让我感到尴尬。我在IntelliJ IDEA项目中有一个.properties文件,它被添加到类路径中,但在运行时,我得到一个异常,该文件不存在 我已经看完了这个问题的所有答案 我做了以下几件事:- (一) 转到项目结构。 选择您的模块。 在右边的树中找到文件夹并选择它。 单击该树上方的“源”按钮(带有蓝色文件夹),使该文件夹成为“源”文件夹 2) 我已检查设置->编译器-

我花了2个小时在IntelliJ IDEA类路径中添加了一个属性文件。我是一个Eclipse用户,在IDEA中无法做到这一点让我感到尴尬。我在IntelliJ IDEA项目中有一个.properties文件,它被添加到类路径中,但在运行时,我得到一个异常,该文件不存在

我已经看完了这个问题的所有答案

我做了以下几件事:-

(一) 转到项目结构。 选择您的模块。 在右边的树中找到文件夹并选择它。 单击该树上方的“源”按钮(带有蓝色文件夹),使该文件夹成为“源”文件夹

2) 我已检查设置->编译器->资源模式是否有?*.properties项

3) 我在pom.xml中添加了下面的标记

<build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
        </resource>
    </resources>
</build>

我发现在查找文件名时不应提及.properties
如果文件是abc.properties,那么只需查找abc而不是abc.properties,一般来说,将正确的目录标记为源目录确实可以解决问题,但我发现还有另一个重要的细节。您需要确保您的工作目录(可以在运行配置中找到)设置正确。在我的项目中,由于某种原因,它被设置到了错误的目录,并且由于Java试图在工作目录中查找*.properties文件(除非您在代码中指定了绝对路径),所以在我的属性中找不到client.properties,它只是不在“错误”的工作目录中


另外,我是一名经验不足的初级开发人员,这是我在这里的第一个答案,因此我可能没有完美和/或正确地描述一切,但我花了2个多小时试图找出我的属性文件没有加载的原因,所以我希望这能帮助处于同样困境的人。快乐编码:)

这里有人能帮忙吗。这不应该这么难:(您能否提供一些有关错误的详细信息,以及如何在运行时使用
属性
文件。我指的是一些代码示例、配置和异常堆栈跟踪。@EugeneEvdokimov-我添加了更多详细信息。请检查。如果您使用Maven构建项目,结果不应取决于您工作的IDE,是否是Eclipse还是IDEA。关于您的问题,关于SO:,,有很多很好的答案。希望它们会有所帮助。谢谢@EugeneEvdokimov,但问题是我的代码没有直接加载此属性文件。我正在调用某个第三方jar,而该第三方jar正试图加载此属性文件。因此,我无法真正尝试更改加载文件的方式。我唯一需要确保的是它应该在类路径上。目前我已经将它添加到tomcat的lib文件夹中,但我需要一个永久性的解决方案。
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();
                }
            }
        }