【解决问题】@ComponentScan导致组件注入失效

背景

最近同事在增加全局日志注解时候,从别的服务直接复制代码,然后启动程序,按照这样来说,如果别的服务没有问题,这个应该也是没有问题,但是事实不是你想的那样

问题

操作:

springboot项目添加一个公共的日志配置类

问题:

xxl-job报错,直接找不到对应的执行器了

排查:

  1. 检查xxl-job没有任何问题

  1. 回退代码,xxl-job可以使用

  1. 那么问题只能是修改的部分了

仔细阅读修改部分

springboot项目添加@ComponentScan注解,而且只扫描了一个类,问题就是在这

@ComponentScan注解:

  1. 用于指定包的扫描路径。用于代替spring的xml配置文件中的<context:componet-scan base-package=""/>标签

  1. springboot 默认是扫描启动类同级目录及子目录下面的所有组件,但是如果启动类添加@ComponentScan注解,只扫描这个注解对应的组件

结论:

如果添加@ComponentScan注解,需要指定扫描的包路径

注意:

@ComponentScan注解的value及basePackageClasses是可以同时添加的,不用分开的

结论:

最后写法如下:

建议:

对于程序员来说,复制别人代码,一定要思考为什么这样写的,不然你会一直在坑里,进步缓慢

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值