No qualifying bean of type available

今天帮同事排查问题,启动错误日志很明显:就是Springboot启动时候,发现某个Bean没有注册成功,无法纳入Bean生命周期的管理。

上下文:

引入第三方jar包,使用对方提供的FeignClient

引入方法

1、pom.xml引入包路径

2、类中引入Bean,通过@Resource 注入

3、SpringBoot的启动类中,加入第三包的扫描路径

@EnableFeignClients(basePackages = {
        "com.xxx.yyy.zzz.facade.stub.api",
        "com.xxx.yyy.zzz.facade.stub.api"}

启动失败,真实奇怪啊。

因此

解决方案2:

1、pom.xml引入包路径

2、自定义interface,自定义feignClient(就是把原来的接口复制过来,重命名即可)

2、类中引入Bean,通过@Autowired 注入新的interface

4、SpringBoot的启动类中,加入新写的interface的扫描路径

启动成功,正常可以同个eureke发起http请求。

这就奇怪了,这是一样的套路啊,为啥方案1的引入方法就不行???

仔细比对,终于发现了问题之所在!!!!

 

原来是FeignClient 是不同的引入啊!

mark一记!!!!引入第三方包,要仔细确认FeignClient类路径

posted @ 2022-03-01 10:29  花花牛  阅读(2940)  评论(0编辑  收藏  举报