FeignClient注解常见的异常NoSuchBeanDefinitionException: No qualifying bean of type
常见异常:
NoSuchBeanDefinitionException: No qualifying bean of type
只要是新增@FeignClient引起的,只要在SpringBoot的启动类上添加@EnableFeignClients注解就能解决,但是注意如下:
1、@FeignClient所在的包路径不从属于Application.java所在的package时,会导致feign调用不,必须在@EnableFeignClients中指定路径;
2、@EnableFeignClients中一旦指定了basePackages,默认从属于Application.java所在的package的@FeignClient所在的包路径也要指定;
3、一般情况下,项目中需要对外暴露Rest接口,定义的Api接口都是从属于Application.java所在的package;如果调用第三方的Rest接口,方案1是引入对方的jar包,然后在@EnableFeignClients中指定路径;方案2是不引入对方包,在代码中自定义接口(包路径可控,第三方包拷贝过来即可),毕竟说到底底层都是Http调用;我们指定@EnableFeignClients注解中的路径是为了Springboot的自动装配和Bean托管用的。
4、定义@FeignClient的时候,常用openfeign或者是netflix.feign的包,项目中会出现两个共存的情况,导致Springboot托管Bean有问题,处理的方案就是:统一以本项目为准,比如项目中使用了openfeign,如果引入第三方包是netflix.feign,则不引入依赖包,直接重写对方接口(拷贝对方代码到项目中,修改@FeignClient依赖包即可);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?