Есть ли смысл, чтобы это работало? Зачем вам исправлять его статически, чтобы тот же самый pom?
Обычно, когда у вас много профилей, вы можете захотеть иметь один как:
<activation>
<activeByDefault>true</activeByDefault>
</activation>
но конечно не обязательно. Затем другие профили запускаются явно или теми способами, которые представлены позже.
Ниже я прикрепил части из Введение в создание профилей.
Профиль можно запустить/активировать несколькими способами:
- Явно
- Через настройки Maven
- На основе переменных среды
- Настройки ОС
- Наличие или отсутствие файлов
Часть переменные среды — это та часть, которую, я думаю, вы пытаетесь использовать. А чтобы было немного запутаннее, позже мы будем называть его системным свойством. Так что это системное свойство. Позже в том же документе вы увидите использование:
<activation>
<property>
<name>debug</name>
</property>
</activation>
будет активирован (например):
mvn install -Ddebug
Однако, например, следующее не работает:
export debug=true
mvn install
Итак, почему свойства pom не применяются как системное свойство или какое-либо другое свойство. Я думаю, это потому, что профиль должен иметь возможность переопределять значения свойств pom, которые затем можно было бы рассматривать как значения по умолчанию.
Однако позже в том же документе несколько строк:
Профили в POM
...
Профили, указанные в POM, могут изменять следующие элементы POM:
...
‹свойства› (фактически недоступны в основном POM, но используются за кулисами )
person
pirho
schedule
12.11.2018