propsdatabase = new Properties();
InputStream dbin = getClass().getResourceAsStream("/properties/database.properties");
propsdatabase.load(dbin);
我正在通过名为“properties”的文件夹中名为“database.properties”的属性文件读取我的数据库连接详细信息。就在根目录下面。
在 Eclipse 中导出 jar 时,代码运行良好。
但是我在 IntelliJ 中使用 Maven 项目来获取 jar 。它抛出空指针异常。
因为dbin的值为NULL。(我也打印检查了)。
我的结论是无法识别读取文件的路径。
现在 IntelliJ 一切都很好。
在 Eclipse 中导出为 jar 时,虽然 jar 包含 propertioes 文件夹,但未检测到 IT。请帮忙
最佳答案
getResourceAsStream
返回 null 的原因是 /properties/database.properties
文件不在 Maven 类路径中。
将您的属性文件夹移动到 /src/main/resources
文件夹下,当 Maven 创建 jar 文件时,将包含 /properties/database.properties
资源,你将不再获得 NPE。
关于java - 读取属性文件时出现空指针异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10447113/