搭建spring多模块项目过程中,发现@Autowired无法自动注入

spring boot @Autowired无法自动注入
解决:查找资料后,发现SpringBoot项目的Bean装配默认规则是根据Application类所在的包位置从上往下扫描!“Application类”是指SpringBoot项目入口类。这个类的位置很关键:推荐放把启动类放在该文件包的父目录如(com.wqs)下,不要放在java下。

方案一:移动启动类文件

这是修改之前的目录结构

spring boot @Autowired无法自动注入

这是修改之后的目录结构

spring boot @Autowired无法自动注入
相当于把启动类AdminWebApplication从com.wqs.adminweb移动到com.wqs,这样启动类就能扫描到bean了

方案二: 不移动启动类,在启动类中加入@ComponentScan(“com.wqs”)注解

spring boot @Autowired无法自动注入

结果:

spring boot @Autowired无法自动注入

相关文章: