spring boot注入失败的场景主要有
Application类位置异常
- 待注入的类位于Application类所在包的外层;
- @ComponentScan扫描的位置没有包括待注入的bean的包
方法作用域问题
该问题我们在Controller层出现过, 具体代码如下
@RestController
@RequestMapping("/mis")
public class XXXrMisController {
@Autowired
private MonitorMisService monitorMisService;
@GetMapping("/Info")
private CommonResponse<LiveUrlInfoRes> liveUrlInfo() {
CommonResponse<LiveUrlInfoRes> commonResponse = CommonResponse.success();
return commonResponse.setResult(monitorMisService.Info(sn, channel));
}
}
问题出现在liveURLInfo方法的作用域,使用private方法,相应的对MonitorMisService 的依赖就不能注入,改为public就可以了。具体原因待查