Я знаю, что невозможно «связать» объявление профиля.Можно сделать то, что я хочу (но не полностью), используя системные свойства в командной строке, такие как mvn -Dvar = value.И затем используйте это:
<activation>
<property>
<name>var</name>
<value>value</value>
</property>
</activation>
или для одновременной активации нескольких профилей с -P profile1, profile2
Фактически у меня есть 4 профиля, и я хочу создать пятый профиль со всеми аспектами jчасть (плагины, зависимости, ...), которая должна быть активирована, только если активирован профиль 1, 2 или 3.Например, у меня нет избыточных объявлений плагинов и зависимостей.
<profile>
<id>profile1</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
...
</build>
</profile>
<profile>
<id>profile2</id>
<build>
...
</build>
</profile>
<profile>
<id>profile3</id>
<build>
...
</build>
</profile>
<profile>
<id>profile4</id>
<build>
<plugins>
<plugin>
...
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>aop</id>
<build>
<plugins>
<plugin>
...
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
...
</dependency>
<dependency>
...
</dependency>
</dependencies>
</profile>
Проблема в том, что профиль 1 является профилем по умолчанию, и даже это должно быть возможно сделатьбез аргументов командной строки.Я попытался определить значение, но оно не работает, потому что свойство активации работает только со свойствами системы.
Я ошибаюсь?Есть ли другой способ сделать это?
Спасибо