Springboot 项目启动时@FeignClient报错

现象:项目启动时连接数据源,数据源的连接信息需要通过http接口获取的。我通过配置 @FeignClient 来调用远程接口时,提示无法找到服务。

原因:远程服务使用的是通过配置文件设置的 service-name.ribbon.listOfServers 方式。

ribbon在调用远程服务的时候还未将配置文件的信息加载到系统中。ribbon是通过 ConfigurationManager 来获取配置信息。需要提前将配置文件信息加载。可以在必要的地方设置

@DependsOn("configurableEnvironmentConfiguration") 来实现。ConfigurableEnvironmentConfiguration 对象读取配置文件并将自己设置到 ConfigurationManager 中,此时ribbon就可以顺利连接了。

 

posted @ 2024-12-19 14:54  国家重点扶贫攻坚对象  阅读(191)  评论(0)    收藏  举报