多个@FeignClient()实现同一个服务

两个FeignClient调用同一个服务,启动报错:
The bean ‘engine.FeignClientSpecification’ could not be registered. A bean with that name has already been defined and overriding is disabled.

解决思路:

  1. 很明显两个bean冲突了 盲猜两个bean的名称都是由调用的服务名称提供的
  2. 于是就name
    多个@FeignClient()实现同一个服务
    启动还是报错
    Failed to read candidate component class: file [/Users/coolcorgy/data/项目/management/management-service-api/management-user-api/target/classes/cn/corgy/user/feign/IResourcesClient.class]; nested exception is org.springframework.core.annotation.AnnotationConfigurationException: Different @AliasFor mirror values for annotation [org.springframework.cloud.openfeign.FeignClient] declared on cn.corgy.user.feign.IResourcesClient; attribute 'name' and its alias 'value' are declared with values of [FeignResourcesClient] and [management-user].
  3. 很明显改错的 查看源码
    多个@FeignClient()实现同一个服务
    如果存在,这将用作 bean 名称而不是名称,但不会用作服务 ID。
    多个@FeignClient()实现同一个服务
  4. 启动成功
上一篇:腾讯笔试题:小Q硬币组合


下一篇:FeignClient中name和url属性的作用