SpringBoot中@CompentScan excludeFilters配置无效

记录一个在开发中遇到的问题,一个空项目集成多个其他项目,由于这多个项目中出现了同名类,这时启动时报同名类冲突如下
在这里插入图片描述

一.尝试解决方案

1.试用CompentScan excludeFilters

在这里插入图片描述
结果还是报错
在这里插入图片描述
这时产生怀疑
接着不停的百度,终于找到了相应的文章https://www.jianshu.com/p/2cabfb1975c7,看完后我猜测是不是这样一个情况:引入的项目A中启动类造成的,因为该类上也携带了@CompentScan注解,并且引入的A项目和B项目中都有名字为MybatisPlusConfig的类,空项目又引入了这两个项目,都包含了这两个类,然后空项目启动时相当于加载了两次MybatisPlusConfig类(1次是A的启动类携带的@CompentScan注解,第2次是空项目启动类携带的@CompentScan注解),接下来在空项目的启动类中排除A项目的启动类验证(去掉A的启动类的加载)。

2.验证

排除A项目的启动类A
在这里插入图片描述
这是发现还是报错,因为虽然排除了启动类A,但是当前空项目中还是存在两个相同的名称的类,接下来再排除A项目中的MybatisPlusConfig类
在这里插入图片描述
这时发现又报mapper类找不到(A项目中的)
在这里插入图片描述
这时在空项目中启动类上加上@MapperScan(A项目中mapper类包名 )问题得到解决项目成功启动。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值