Maven中静态资源和字节码文件的过滤.

问题描述:

在使用maven整合mybatis项目时, 常常遇到以下问题:

之前的一个项目,配置文件是放在resources包下的 如下图所示(com.itheima.mapper里面放着UserMapper.xml)

在这里插入图片描述

这样做是没有问题的, 能正常跑

但是如下图所示: 假如你把UserMapper接口的配置文件(也就是UserMapper.xml)放在了 Java包下 而不是resources包下

在这里插入图片描述

那么idea就会报错

Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource com/kuang/mapper/UserMapper.xml

意思是找不到com.kuang.mapper包下的UserMapper.xml这个配置文件. 不信的话你看下图, target目录下是不读取的

在这里插入图片描述

而且你会惊奇的发现 jdbc.properties也有可能因为这个原因不读取

解决方案:

如果发现这种情况, 就必须在pom.xml中加上如下配置

<build>        
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
                <filtering>true</filtering>
            </resource>
        </resources>
</build>

注意: 如果是src/main/resources的话 就是处理resources目录下. 如果像上文那样是src/main/Java 那就是给Java目录处理

处理过后 重新运行 我们发现target目录下读取了UserMapper.xml这个配置文件
在这里插入图片描述
问题解决.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值