我真的不知道还能做什么。我通常把我的属性文件放在我的源文件夹中(顺便说一下,我使用Netbeans),当我读它时,一切正常。
今天,我在源文件夹中创建了一个新的属性文件并试图读取它,并且我一直得到一个空指针异常,意味着源文件夹中文件不存在。然而,在所述源文件夹中有另一个属性文件,我能够读取一个罚款。我删除了两个属性文件并重新开始,但这次我似乎无法阅读任何内容。
我的代码很好:
Properties pp = new Properties();
pp.load(getClass().getResourceAsStream("/errors.properties"));
然后我为我的项目做了清理和构建,现在其中一个类可以读取errors.properties文件(相同的代码,没有任何更改),但我现在也得到了一个java.lang.NoClassDefFoundError for my我尝试运行时的第二堂课。
WTH!?
答案 0 :(得分:1)
试试这个:
Properties pp = new Properties();
InputStream is = getClass().getClassLoader().getResourceAsStream("errors.properties");
pp.load(is);
顺便说一下。这是不 NetBeans中的错误。
如果您使用getClass().getResourceAsStream("errors.properties")
,则error.properties
必须是您上课的地方。
注意:我只使用InputStream is
,否则该行太长了。当然,您可以将两行合并为一行。