Настроить активный профиль в SpringBoot посредством Maven

Я'м пытаясь установить активный профиль в весна загрузки приложения с помощью Maven 3.<БР> В моем pom.xml я поставил по умолчанию активный профиль и дом Весна.профилей.активный в развития:

<profiles>
    <profile>
        <id>development</id>
        <properties>
            <spring.profiles.active>development</spring.profiles.active>
        </properties>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
    </profile>
</profiles>

но каждый раз, когда я запускаю мое приложение, я получаю следующее сообщение в логах:

No active profile set, falling back to default profiles: default

и профиль SpringBoot установлен по умолчанию (читает приложения.вместо свойства приложения-разработка.свойствах)<БР><БР> Что еще я должен сделать, чтобы мой SpringBoot активный профиль установлен через профиль Maven?<БР> Любая помощь высоко ценится.

Комментарии к вопросу (1)
Решение

Профиль Maven и весенний профиль-это две совершенно разные вещи. Весной ваш pom.xml определяет.профилей.активный переменная, которая доступна в процессе сборки, но не во время выполнения. Именно поэтому активизируется только профиль по умолчанию.

Как привязать профиль Maven с весны?

Вам нужно передать переменную создать для вашего приложения, так что он доступен, когда это началось.

  1. Определить место приложения ваших`.свойства:

весна.profiles.active=@spring.profiles.active@ В @весна.профилей.переменную активную@ должен соответствовать заявленной собственность от профиль Maven.

  1. Включить фильтрацию ресурсов в ВЫ pom.xml:

<строить> <ресурсы> <ресурс> <каталог>В src/главная/ресурсы</каталог> <фильтрации>правда</фильтрации> </ресурсов и GT; </ресурсов> ... </строить>

Когда построение выполнено, все файлы в каталоге src/основных/ресурсов будут обрабатываться Maven и заполнитель в приложения`.свойства будут заменены с переменной, определенное в свой профиль Maven.

Для более подробной информации вы можете перейти на мой пост]1, где я описывала этот случай использовать.

Комментарии (2)

Или довольно легко:

mvn spring-boot:run -Dspring-boot.run.profiles={profile_name}
Комментарии (1)

Можно запустить с помощью следующей команды. Здесь я хочу провести с использованием Spring профиль "местные":

-весна загрузки:бежать -пьян.jvmArguments=" по-Dspring.профилей.активный=местные"`в

Комментарии (1)

В развитии, активизации весеннего профиль загрузки при профиль Maven-это активировать прямо. Вы должны использовать профили недвижимость из весна-загрузки-Maven-плагина в профиль Maven, таких как :





            development

                true




                        org.springframework.boot
                        spring-boot-maven-plugin


                                development








Вы можете запустить следующую команду, чтобы использовать весной загрузки и профиля Мэйвен "развитие":

mvn spring-boot:run -Pdevelopment

Если вы хотите быть в состоянии отобразить любой весенний профилей загружается профиль Maven с тем же именем профиля, вы можете определить один профиль Maven и позволяя как наличие свойства, знаток детектед. Это свойство может быть единственное, что вы должны указать, как вы запустите команду МВН. Профиль будет выглядеть так :


        spring-profile-active


                my.active.spring.profiles





                    org.springframework.boot
                    spring-boot-maven-plugin


                            ${my.active.spring.profiles}





И вы можете запустить следующую команду, чтобы использовать весной загрузки и профиля Мэйвен "развитие":

mvn spring-boot:run -Dmy.active.spring.profiles=development

или :

mvn spring-boot:run -Dmy.active.spring.profiles=integration

или :

 mvn spring-boot:run -Dmy.active.spring.profiles=production

И так для...

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

Комментарии (0)

Вы должны использовать Весна загрузки мавен плагин:


  ...

    ...

      ...

        org.springframework.boot
        spring-boot-maven-plugin
        1.5.1.RELEASE


            foo
            bar


        ...

      ...

    ...

  ...
Комментарии (0)

Есть несколько способов, чтобы установить профили для приложения springboot.

  1. Вы можете добавить это в файл свойств:

весна.профилей.активный=Дэв

  1. Программный способ:

SpringApplication.setAdditionalProfiles (на"Дева" - а);

  1. Тесты сделать это очень легко, чтобы указать, какие профили активны

@ActiveProfiles (на"Дева" - а)

  1. В среде Unix

экспорт spring_profiles_active=Дэв

  1. Системный параметр для JVM

-Dspring.профилей.активный=Дэв

Комментарии (0)