Nacos和Eureka冲突问题原因分析

一、问题现象

Description:

Field autoServiceRegistration in org.springframework.cloud.client.serviceregistry.AutoServiceRegistrationAutoConfiguration required a single bean, but 2 were found:
	- eurekaAutoServiceRegistration: defined by method 'eurekaAutoServiceRegistration' in class path resource [org/springframework/cloud/netflix/eureka/EurekaClientAutoConfiguration.class]
	- nacosAutoServiceRegistration: defined by method 'nacosAutoServiceRegistration' in class path resource [com/alibaba/cloud/nacos/registry/NacosServiceRegistryAutoConfiguration.class]

Action:

Consider marking one of the beans as @Primary, updating the consumer to accept multiple beans, or using @Qualifier to identify the bean that should be consumed

二、解决办法

检查pom文件中,是不是同时添加了Nacos和Eureka的依赖?如果是,选择一个不必要的去掉即可。比如这次异常,我保留了Nacos,去掉了Eureka。

<!--Eureka客户端-->
<!--<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    <version>2.2.6.RELEASE</version>
</dependency>-->

<!--nacos客户端-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    <version>2.2.6.RELEASE</version>
</dependency>

三、原因分析

Spring Boot项目启动时,AutoServiceRegistrationAutoConfiguration类需要注入一个类型为AutoServiceRegistration的bean。但是,在容器中却出现了两个Bean,其父类均为AutoServiceRegistration,就是异常中打印出的nacosAutoServiceRegistration和eurekaAutoServiceRegistration。

异常中还顺便给出了解决方案:即为其中一个bean添加注解@Primary或@Qualifier。其实,简单的解决办法就是去掉无用的依赖即可。如果其他大佬有不同看法,可以留言讨论。

相关推荐

  1. NacosEureka冲突问题原因分析

    2023-12-09 20:04:01       38 阅读
  2. EurekaNacos

    2023-12-09 20:04:01       24 阅读
  3. EurekaNacos的关系

    2023-12-09 20:04:01       17 阅读
  4. 微服务架构+服务注册中心+NacosEureka+比较分析

    2023-12-09 20:04:01       37 阅读
  5. 详解NacosEureka的区别

    2023-12-09 20:04:01       27 阅读
  6. 详解NacosEureka的区别

    2023-12-09 20:04:01       28 阅读
  7. NacosEureka的全面对比

    2023-12-09 20:04:01       30 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-09 20:04:01       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-09 20:04:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-09 20:04:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-09 20:04:01       18 阅读

热门阅读

  1. LeetCodehot100

    2023-12-09 20:04:01       35 阅读
  2. #HarmonyOS:基础语法

    2023-12-09 20:04:01       43 阅读
  3. LeetCode 每日一题 Day 7(dp动态规划)

    2023-12-09 20:04:01       40 阅读
  4. ES6 箭头函数

    2023-12-09 20:04:01       43 阅读