与getClassLoader()方法有关的问题:为什么下面的代码中会发生空指针异常
import java.io.IOException;
import java.util.Properties;
public class PropertyUtil {
public static void main(String[] args) {
Properties properties = new Properties();
try {
properties.load(PropertyUtil.class.getClassLoader().getResourceAsStream("LYZ.properties"));
String username = properties.getProperty("username");
System.out.println(username);
} catch (IOException e) {
System.out.println("无法读取LYZ.properties");
}
}
}
控制台信息
Exception in thread "main" java.lang.NullPointerException
at java.util.Properties$LineReader.readLine(Properties.java:434)
at java.util.Properties.load0(Properties.java:353)
at java.util.Properties.load(Properties.java:341)
at com.test.PropertyUtil.main(PropertyUtil.java:10)
第十行代码就是:
properties.load(PropertyUtil.class.getClassLoader().getResourceAsStream("LYZ.properties"));
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
应该是这里报指针
那么最可能的原因就是资源文件没有找到. 你要确认文件所在路径,因为你给的是相对路径, 即
LYZ.properties
应与PropertyUtil
所在包的目录相同才行.