Миграция на Spring.config.activate.on-profile в Spring Boot 3JAVA

Программисты JAVA общаются здесь
Anonymous
Миграция на Spring.config.activate.on-profile в Spring Boot 3

Сообщение Anonymous »

Я занимаюсь переносом старого приложения Spring Boot с версии 2.3.5.RELEASE на версию 3.1.2 и пытаюсь обновить модуль, который использует формат файла конфигурации для соответствия новому механизму активации профиля, представленному в Spring Boot 2.4. . Раньше я использовал Spring.profiles для активации различных конфигураций на основе активного профиля. Однако в новой версии рекомендуется использовать Spring.config.activate.on-profile.
Вот выдержка из моего исходного файла конфигурации (src/test/resources /example/auto-loaded/config-file.yaml):

Код: Выделить всё

auto-loaded:
yaml-config-file:
yaml-config-file-property: default value

---
spring:
profiles: some-env

auto-loaded:
yaml-config-file:
yaml-config-file-property: value for some-env

---
spring:
profiles: some-other-env

auto-loaded:
yaml-config-file:
yaml-config-file-property: value for some-other-env
some-other-env-property: expected not to be loaded

Я попытался перенести это в новый формат следующим образом:

Код: Выделить всё

auto-loaded:
yaml-config-file:
yaml-config-file-property: default value

---
spring:
config:
activate:
on-profile: some-env

auto-loaded:
yaml-config-file:
yaml-config-file-property: value for some-env

---
spring:
config:
activate:
on-profile: some-other-env

auto-loaded:
yaml-config-file:
yaml-config-file-property: value for some-other-env
some-other-env-property: expected not to be loaded

После обновления файла конфигурации я не вижу ожидаемого поведения при активации профилей some-env и some-other-env. Похоже, что свойства не загружаются и не переопределяются, как до миграции.
Вот мои вопросы:
Является ли мой обновленный файл конфигурации правильный формат в соответствии с новым механизмом активации профиля в Spring Boot 3?
Нужны ли дополнительные шаги для обеспечения правильной загрузки и применения конфигураций, специфичных для профиля?
более подробную информацию можно найти здесь https:/ /github.com/negadras/config-properties (тестовый класс DefaultConfigLoaderTest и DefaultConfigLoaderWithProfileTest)

Подробнее здесь: https://stackoverflow.com/questions/773 ... ing-boot-3

Вернуться в «JAVA»