Использование разных конфигов зависит от активного профиля пружины - PullRequest
0 голосов
/ 24 сентября 2019

Я хочу иметь разные конфигурации пружин в зависимости от активного профиля пружины.Если я запускаю jar с параметром --spring.profiles.active = blabla, я использую один конфиг, а если в аргументах start нет профиля, я использую другой.Теперь я могу использовать профиль blabla, но если я запускаю jar без профилей, он использует оба.

Конфигурация по умолчанию:

@SpringBootApplication(
        exclude = {
                DataSourceAutoConfiguration.class,
                DataSourceTransactionManagerAutoConfiguration.class,
                HibernateJpaAutoConfiguration.class,
                SecurityAutoConfiguration.class})
@Slf4j
public class DefaultConfig {

    public DefaultConfig() {
        log.error("Using default config");
    }

}

Конфигурация Blabla:

@Profile("blabla")
@Configuration
@Import({
        DispatcherServletAutoConfiguration.class,
        ErrorMvcAutoConfiguration.class,
        JacksonAutoConfiguration.class,
        WebMvcAutoConfiguration.class,
        ServletWebServerFactoryAutoConfiguration.class,
})
@Slf4j
public class BlablaConfig {

    public BlablaConfig() {
        log.error("Using bla bla config");
    }

}

Сейчас:

java -jar app.jar:

...
Using default config
Using bla bla config
...

java -jar app.jar --spring.profiles.active = blabla:

...
Using bla bla config
...

Должно быть:

java -jar app.jar:

...
Using default config
...

java -jar app.jar --spring.profiles.active = blabla:

...
Using bla bla config
...

1 Ответ

0 голосов
/ 24 сентября 2019

Добавьте @Profile("!blabla") к вашему DefaultConfig.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...