Не так, как вы просили.Сервер Spring Cloud Config использует NativeEnvironmentRepository, который:
Простая реализация {@link EnvironmentRepository}, которая использует SpringApplication и файлы конфигурации, расположенные по обычным протоколам.Результирующая среда состоит из источников свойств, расположенных с использованием имени приложения в качестве основы файла конфигурации (spring.config.name) и имени среды в виде профиля Spring.
См .: https://github.com/spring-cloud/spring-cloud-config/blob/master/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/environment/NativeEnvironmentRepository.java
Таким образом, в основном каждый раз, когда клиент запрашивает свойства у Config Server, он создает ConfigurableApplicationContext с использованием SpringApplicationBuilder.И он запускается со следующим свойством конфигурации:
String config = application;
if (!config.startsWith("application")) {
config = "application," + config;
}
list.add("--spring.config.name=" + config);
Таким образом, возможными именами файлов свойств будут только application.properties(or .yml)
и имя клиентского приложения конфигурации, которое запрашивает конфигурацию - в вашем случае applicationA.properties
.
Но вы можете "обмануть".В конфигурации сервера конфигурации вы можете добавить такое свойство
spring:
cloud:
config:
server:
git:
search-paths: '{application}, {application}/your-subdirectory'
. В этом случае Config Server будет искать те же имена файлов свойств, но в нескольких каталогах, и вы можете использовать подкаталоги для разделения ваших свойств.Таким образом, с конфигурацией выше вы сможете загрузить конфигурацию из:
applicationA/application.properies
applicationA/your-subdirectory/application.properies