在我的应用程序中,我们使用spring cloud config,在其中托管如下文件支持的属性
配置服务器
spring.profiles.active=native
spring.cloud.config.server.native.search-locations=file:///${SRC.HOME}/config/,file:///${SRC.HOME}/config/app1/,file:///${SRC.HOME}/config/app2/,file:///${SRC.HOME}/config/app3/
配置客户端
spring.profiles.active=dev,spring.cloud.config.uri=http://localhost:7070/,spring.application.name=app1,app2,app3
最近,我们引入了spring open-feign,并且注意到只有在存在单个应用程序名称时,主类才会启动。当您以逗号分隔的方式提供名称(spring.application.name = app1,app2,app3)时,就会出现以下异常中断
问题
如何容纳此功能并保持配置加载方法 一样。
Spring-boot Version -2.1.5.RELEASE
Open-Feign - 2.1.1.Release
Spring-Cloud - Greenwich.SR1
例外
原因:java.lang.ClassCastException:java.util.ArrayList不能为 转换为java.lang.String com.netflix.config.ConfigurationBasedDeploymentContext.getValueFromConfig(ConfigurationBasedDeploymentContext.java:329) 〜[archaius-core-0.7.6.jar:0.7.6]
答案 0 :(得分:0)
顺便说一句,不知道为什么需要多个配置文件的位置,但是我认为所有配置文件的一个统一位置是常见的做法。