Spring Open-Feign не запускается с более чем одним spring.application.name, используемым в Config-client

В моем приложении мы используем конфигурацию весеннего облака, где мы размещаем свойства, поддерживаемые файлом, как показано ниже.

Сервер конфигурации

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), он ломается с исключением ниже

Вопросы

  1. Кто-нибудь сталкивался с этим когда-нибудь?
  2. Что я делаю не так наверное?
  3. Нужно ли мне изменить подход к загрузке конфигурации, чтобы я указывал только одно имя?
  4. Как реализовать эту функцию, сохранив подход к загрузке конфигурации.

    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. банка: 0.7.6]


person Anirban Banerjee    schedule 25.06.2019    source источник


Ответы (1)


  1. каждое приложение должно иметь только одно уникальное имя. (учтите, что если вы используете eurake для регистрации, вы можете иметь несколько экземпляров одного и того же приложения для балансировки нагрузки)
  2. если вам нужен другой файл конфигурации для одного и того же приложения, вы можете использовать профиль, например. spring.profiles.active=dev2.

Кстати, не уверен, зачем вам нужно несколько мест для файлов конфигурации, но я думаю, что одно общее место для всех файлов конфигурации является обычной практикой.

person Charlie_li2005    schedule 25.06.2019