AProject(父工程)
- BProject(子项目)
- CProject(子项目)
本人遇到的情况是,SpringBoot启动类在BProject,所以扫描的路径是BProject下所有的bean
当我尝试@Autowired C项目的bean时,就会报错找不到bean。
原因是springboot的启动类仅仅扫描了自己工程的bean,没有扫描C项目的bean。
这个时候你只需改写启动类的扫描注解如下所示:
@MapperScan("com.b.bproject")
@ComponentScan(basePackages = {"com.b.bproject","com.c.cproject"})
题外话,@MapperScan 和 @ComponentScan 是可以共存的,他们干的事不同,前者扫描mapper类后者扫描各种组件