无法从另一个配置文件激活/停用一个配置文件。Maven在构建模型之前需要知道活动配置文件的列表。
根据您的用例,有几种解决方法:
activeByDefault:当另一个配置文件被激活时,它将自动被停用。使用自定义属性,以便一个配置文件通过该属性的存在被激活,而另一个配置文件通过该属性的存在被停用。示例配置如下所示:
<profile>
<id>profileA</id>
<activation>
<property>
<name>somename</name>
</property>
</activation>
</profile>
<profile>
<id>profileB</id>
<activation>
<property>
<name>!somename</name>
</property>
</activation>
</profile>
Run Code Online (Sandbox Code Playgroud)
因此,如果您使用调用Maven -Dsomename,profileA将会被激活;否则profileB将被激活。