错误总结:Exception in thread "main" java.lang.ExceptionInInitializerError

本文分析了在Java中使用工厂模式时遇到的配置文件加载异常问题,详细解释了NullPointerException和ExceptionInInitializerError的产生原因,并提供了正确的配置文件路径设置方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天在理解工厂模式时出现了一个错误:

Exception in thread "main" java.lang.ExceptionInInitializerError
	 at com.qyy.factory.UserAction.main(UserAction.java:11)
	Caused by: java.lang.NullPointerException
	 at java.util.Properties$LineReader.readLine(Properties.java:418)
	 at java.util.Properties.load0(Properties.java:337)
	 at java.util.Properties.load(Properties.java:325)
	 at com.qyy.factory.getBean.<clinit>(getBean.java:16)
	 ... 1 more

原因:读取配置文件内容时,其中的配置文件的全限定名写错,这类名字或路径最好复制全限定名,尽量不要手写,不要过分相信不会出错,哈哈

//读取配置文件内容
 private static Properties pro = new Properties();
 static{
 //小括号的名字书写错误
  	InputStream is = getBean.class.getResourceAsStream("/com/qyy/beas.properties");
  try {
   	pro.load(is);
  } catch (IOException e) {
  	 e.printStackTrace();
  }
 }
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值