IDEA中maven项目读取properties配置文件异常解决方法

复现

在javase复习第四弹的反射案例中,运行框架测试类后会有空指针异常。

//1.加载配置文件
        //1.1创建properties对象
        Properties properties = new Properties();
        //1.2加载配置文件,转换为集合
        //1.2.1获取配置文件
        InputStream rs = ReflectTest.class.getClassLoader().getResourceAsStream("pro.properties");
        properties.load(rs);

        //2.获取配置文件中定义的数据
        String className = properties.getProperty("className");
        String methodName = properties.getProperty("methodName");

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 reflect.ReflectTest.main(ReflectTest.java:20)

分析

在配置properties文件时出现空指针异常基本是由于读取不到配置文件导致的。

会不会是我的配置文件路径写错了么,我在编辑器界面时按住Ctrl加鼠标左键时是可以打开pro,properties文件的,所以排除掉文件路径的问题

查找资料

经过在网上的多处查询后

定位到了可能是使用了maven出现的问题

原因是生成的项目中没有生成相关的的配置文件,导致读取不到,所以通过pom文件去设置路径

解决方法

在maven工程中打开pom.xml

加入以下标签即可

<build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                    <include>**/*.tld</include>
                </includes>
                <filtering>false</filtering>
            </resource>
            <resource>
                <directory>src/main/java</directory>
                <excludes>
                    <exclude>**/*.java</exclude>
                </excludes>
            </resource>
        </resources>
    </build>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值