将*mapper.xml迁移到src下导致mapper与id绑定失败的问题

背景描述

最近在写项目时因为用spring cloud alibaba时,由于src中modules下有多个mapper,在将以前的mapper.xml放在resources下没那么方便查找;就想着把xml也方在对应的modules下方便开发管理;

mybatis-plus: 
  # 将原有的配置注释 调整为下面的配置
  # mapper-locations: classpath:/mapper/**/*.xml
  mapper-locations: classpath:com/xxx/modules/*/mapper/*.xml

报错如下截图
在这里插入图片描述
发现还是不对一致困扰了我很久,一致以为是 mapper-locations 后的位置不对,但是怎么调整都没有找到原因,还是妥协暂时将xml放在resources目录下;第二天突然想着看target下编译是否成功,发现target编译下压根就没有xml,自此困扰我一天的问题终于找到原因

问题解决

要解决在项目中,把src编译下的xml编译到target中就很简单了

 <build>
        <!--项目打包会将java目录中的*.xml文件进行打包-->
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
                <!--默认情况下是true 现在修改为false 就不会过滤掉这个xml文件了-->
                <filtering>false</filtering>
            </resource>

            <resource>
                    <directory>
                    src/main/resources
                </directory>
            </resource>
        </resources>
    </build>

打完收工

彩蛋

classpath:与classpath*:的区别
classpath:只会到你的class路径中查找找文件;
classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值