В чем разница между командой -Pprod и spring.active.profile = true?
Когда я выполняю это с помощью командной строки,
mvnw clean install spring-boot: запустить -Dspring.profiles.active = prod -Dmaven.test.skip = true -Djava.util.Arrays.useLegacyMergeSort = true
Проект выполняется правильно
Но когда я пытаюсь использовать ту же самую вещь, используя команду -Pprod, она дает ошибку (нормально работать, но главная страница не может быть отображена),
mvnw clean install spring-boot: запустить -Pprod -Dmaven.test.skip = true -Djava.util.Arrays.useLegacyMergeSort = true
В настоящее время у меня есть три профиля dev, test и prod.
Я хочу знать, в чем разница между ними?
Пожалуйста, дайте мне некоторое представление о команде -Pprod.
-Pprod
является свойством для вызова Maven и активирует профиль Maven с именем prod
, spring.profiles.active=prod
активирует профиль Spring. Они не совпадают, так что это зависит от того, где вы настроили 3 профиля (думаю, вы настроили их как профили Spring, поэтому свойство Spring - это тот, который вы должны использовать). Возможно, однако, чтобы настроить профили Maven таким образом, чтобы в этом запуске был активирован профиль Spring (в основном в профиле Maven вы задали значение свойства Spring для значения). Вы можете узнать больше об этом здесь. Краткий пример:
<profiles>
<profile>
<id>prod</id>
<properties>
<spring.profiles.active>prod</spring.profiles.active>
</properties>
</profile>
</profiles>
- Вопросы
- Spring-boot
- В чем разница между командой -Pprod и spring.active.profile = true?