當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
Spring Cloud 使用 FeignClient 启动报错
生活随笔
收集整理的這篇文章主要介紹了
Spring Cloud 使用 FeignClient 启动报错
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
我們首先來看一下報錯信息
Description:Field businessFeignClient in com.ysc.service.BusinessConfigService required a bean of type 'com.ysc.feignclient.BusinessFeignClient' that could not be found.The injection point has the following annotations:- @org.springframework.beans.factory.annotation.Autowired(required=true)Action:Consider defining a bean of type 'com.ysc.feignclient.BusinessFeignClient' in your configuration.再來看一下 Feign 的配置信息
@SpringBootApplication(scanBasePackages = "com.ysc",exclude = {DataSourceAutoConfiguration.class,ThymeleafAutoConfiguration.class}) @EnableFeignClients public class Application {public static void main(String[] args) {SpringApplication.run(Application.class, args);}}從表面上看配置并沒有什么問題,那么我們來分析一下問題的具體原因。
注解 @EnableFeignClients 與 @ComponentScan 有沖突,兩種注解都會搜索注入指定目錄中的 bean 。@EnableFeignClients 引入了 FeignClientsRegistrar 類,實現了 Spring 的bean 資源的加載。
FeignClientsRegistrar中registerFeignClients方法獲取了@EnableFeignClients注解中的basepackage 屬性值,并進行注入。如果兩種注解都使用時,其中@EnableFeignClients會覆蓋 @ComponentScan 中指定的目錄,從而恢復到默認目錄。
如何解決這個問題:
1、可以將 FeignClient 這個 bean 放在和 Application 啟動類同級目錄
2、可以在 @EnableFeignClients中通過 clients 屬性指定 bean 目錄
@EnableFeignClients(clients = {BusinessFeignClient.class })轉載于:https://www.cnblogs.com/yuansc/p/10536659.html
總結
以上是生活随笔為你收集整理的Spring Cloud 使用 FeignClient 启动报错的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2、RabbitMQ-simplest
- 下一篇: liunx学习