【开发错误记录】关于SpringBootApplication扫描不到其他模块下的bean问题(已解决)

时间:2021-2-27 作者:admin

关于SpringBootApplication扫描不到其他模块下的bean问题(已解决)

在现在的很多项目中,大多是用maven做多模块,分包管理,但是有时候遇到其他模块是没有启动类的,但是有的bean是需要注入的,此时需借助其他模块的启动类来注入bean。

解决问题之前的代码结构
【开发错误记录】关于SpringBootApplication扫描不到其他模块下的bean问题(已解决)

【开发错误记录】关于SpringBootApplication扫描不到其他模块下的bean问题(已解决)
在上述图片中,common模块中的RedisCommonUtil使用到了@Component注解,就表示需要加入到spring bean容器中。

注意:请仔细看启动类的存放位置,在springsecurity-demo模块中的com.xgg.springsecurity包下,而RedisCommonUtil是在common模块中的com.xgg.common包下

点开RedisCommonUtil发现并没有spring bean的小图标,就表示并未注入到spring bean容器中,启动也是必然会报错的。

解决方案

只需要把启动类的位置移到com.xgg包下,启动类会去扫描所有以com.xgg开头的包下的所有bean。
【开发错误记录】关于SpringBootApplication扫描不到其他模块下的bean问题(已解决)
再来看看RedisCommonUtil
【开发错误记录】关于SpringBootApplication扫描不到其他模块下的bean问题(已解决)
已经成功被扫描到并且注入到了spring容器中,也有了spring bean的小图标了,证明被扫描到了,启动也没问题了。

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。