Поведение файла свойств пружины, когда значение отсутствует в файле среды

Мы бежим на spring boot version 1.5.10

JDK : 1.8.0.52

В нашем файле Gradle есть запись

compile group: 'org.springframework.security', name: 'spring-security-web', version: '4.2.3.RELEASE'

Мы отключили это в нашем application.properites через

management.security.enabled= ложь

Мы используем application-production.properties установить производственные переменные

Когда мы работаем в производственной среде, это значение не влияет

Нужно ли явно установить его снова в application-production.properties?

1 ответ

Вы можете использовать множество профилей и разделить ваши настройки на любые файлы. Для запуска по умолчанию приложению будут предоставлены все настройки из application.properties, для производственного запуска с "production"-profile и к настройкам по умолчанию будут добавлены новые настройки из application-production.properties. Fot test будет использовать application-test.properties и запускаться вместе с test. Команда профиля.

Добавьте в pom.xml что-то вроде этого стиля

<profiles>
    <profile>
        <id>h2</id>
        <properties>
            <activatedProperties>h2</activatedProperties>
        </properties>
    </profile>
    <profile>
        <id>postgres</id>
        <properties>
            <activatedProperties>postgres</activatedProperties>
        </properties>
    </profile>
</profiles>

В application.properties найдите spring.profiles.active=@activeProfiles@ и запустите с профилем

Или вы можете использовать только один файл настроек = один профиль, см. Пример /questions/10151024/gradle-zagruzit-fajl-svojstv-v-zavisimosti-ot-profilya/10151037#10151037

Другие вопросы по тегам