The bean 'dataSource',could not be registered.A bean with that name has already been defined

Posted 迷茫王子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了The bean 'dataSource',could not be registered.A bean with that name has already been defined相关的知识,希望对你有一定的参考价值。

问题:

往SpringCloud的注册中心里注册服务时启动SpringBoot项目抛出异常。项目启动报错。

 

***************************
APPLICATION FAILED TO START
***************************
Description:

The bean \'dataSource\', defined in BeanDefinition defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class], could not be registered. A bean with that name has already been defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class] and overriding is disabled.

Action:

Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=true

 

原因:

SpringBoot和SpringCloud的版本不兼容造成。

 

解决方案:

在配置文件application.yml中添加两行配置信息即可,配置如下:

spring:main:allow-bean-definition-overriding: true

 

 

以上是关于The bean 'dataSource',could not be registered.A bean with that name has already been defined的主要内容,如果未能解决你的问题,请参考以下文章

Can't resolve reference to bean 'dataSource' in parent factory: no parent factory availa

ssm整合activiti是报错No bean named 'dataSource' is defined,求大神解决

SpringBoot Error creating bean with name 'dataSource' defined in class path resource。。。

Cannot find class [org.apache.commons.dbcp.BasicDataSource] for bean with name 'dataSource'

idea中applicationContext-trans.xml中的Cannot resolve bean 'dataSource'...的问题解决

Spring Boot - Error creating bean with name 'dataSource' defined in class path resource(示例代码