如何使用Spring Boot(1.5.3.RELEASE)和Spring Cloud Config(1.3.0.RELEASE)编写Spring Cloud Config服务器?

时间:2017-05-19 20:56:34

标签: spring spring-boot spring-cloud-config

我修改了spring-cloud-config-server-mongodb项目,使用最新版本的Spring Boot(1.5.3.RELEASE)和Spring Cloud Config(1.3.0.RELEASE)。 我还介绍了运行mongo db config服务器的MongoConfigServer类。

当我运行它时,我收到此错误:

org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'org.springframework.cloud.config.server.environment.EnvironmentRepository' available: more than one 'primary' bean found among candidates: [searchPathLocator, environmentRepository, searchPathCompositeEnvironmentRepository]

我不确定我做错了什么。如何在不收到此错误的情况下编写自己的配置服务器? 我没有看到有关如何执行此操作的任何文档。

有人可以帮助我,还是指导我?

这个mongo db配置服务器曾用于旧版Spring Boot和Spring Cloud Config。 我使用此Mongo DB配置服务器作为编写其他配置服务器的示例,该服务器也收到相同的错误。

my-spring-cloud-config-server-mongodb可在https://github.com/minmay/spring-cloud-config-server-mongodb.git

获取

2 个答案:

答案 0 :(得分:1)

spring-cloud-config-server-mongodb项目已升级为使用spring-boot 1.5.7快照。

答案 1 :(得分:0)

我通过更新https://github.com/minmay/spring-cloud-config-server-mongodb/blob/master/src/main/java/org/springframework/cloud/config/server/mongodb/config/MongoEnvironmentRepositoryConfiguration.java修复了此问题。

我做的是删除了searchPathLocator bean,并从environmentRepository中删除了主要注释。

我认为Spring Cloud Config已更新为有条件地找到environmentRepository bean。