1

我有3个模块:

  • 模块1
  • 模块2
  • 模块3

和 3 个配置文件:

  • 简介1
  • 简介2
  • 简介3

我想建立Module1如果:

  • Profile2或被Profile3激活,并且
  • skipModule1未设置命令行属性

不管是否Module1构建,Profile2并且Profile3应该构建(两者)模块Module2Module3. 这可以在 Maven 3 中实现吗?如果是这样,怎么做?

正如我所看到的,问题是配置文件无法激活其他配置文件 ,并且我不能将Module1其作为一部分包含在内,Profile2或者Profile3因为我无法指定如果未设置Module1应跳过该配置文件。skipModule1

4

1 回答 1

1

尽管配置文件无法激活其他配置文件,但您仍然可以采取一种解决方法。

构建时,不要显式激活 Profile2 和 Profile3(通过-P Profile2,Profile3),而是使用变量激活它们,使其看起来像mvn compile -DactivateProfile2=true -DactivateProfile3=true.

然后您对 Profile1 的要求变得直截了当: Profile1(包括 Module1)由activateProfile2=true, activateProfile3=true, !skipModule1

于 2013-08-28T03:50:12.473 回答