SpringBoot多模块扫描包问题及解决
作者:NeoLshu
解决多人协作Spring项目Bean注入问题:确保分包层级正确(Controller在webApplication下),使用@Component、@Service等注解,导入依赖并配置扫描,注意包名错误会导致扫描失败
问题
由于项目是多人合作的,所以分的模块较多,在运行的时候出现了部分Controller中的Bean没有被注入的问题
解决方法
1、首先是要建包的层级
@SpringBootApplication 位于lce包下
其余的Service层的业务,Controller层的接口(前后端分离)均要建包在lce包的下一级,即webApplication为最高级,这样才可以扫描到其余的包
2、注解
@Component
- @Service service层
- @Controller controller层
- @Repository mapper/dao层
成为Spring的一个组件
@Mapper
这几个注解要写好!
3、要在web启动类的pom.xml里面导入其他模块的依赖
4、web启动类的配置
- @SpringBootApplication
- @componentScan
都可以扫描包
PS:在这一步的时候,若是包名变红,则扫描失败!可以进行排错
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。