Maven激活配置文件

时间:2014-02-18 10:51:53

标签: maven

我在maven中有4个配置文件(A,B,C,D)。我想在B和C未激活时默认激活A.我可以进行一些配置吗?
如果我使用activeByDefault进行A,则激活D时A不会被激活 因此总结一下它应该如下工作:
mvn包-P B(不应激活A)
mvn包-P C(不应激活A)
mvn包-P D(A应该被激活)
mvn包(应该激活A)

2 个答案:

答案 0 :(得分:0)

可以通过配置激活Maven配置文件:

http://books.sonatype.com/mvnref-book/reference/profiles-sect-activation.html#profiles-sect-activation-config

但不幸的是,激活/停用某些激活的配置文件并不是你可以做的部分。

我很想知道更多关于你想要做的事情的背景和根本原因。如果你能给我们更多的信息。

我问的原因是因为它看起来相当复杂。难道你不能使用一些bash脚本来启动正确的配置文件?更重要的是,激活配置文件A真的有问题吗?

答案 1 :(得分:0)

让我提一下对我有用的东西。 我将按如下方式定义这些配置文件:

<profile>
  <id>A</id>
  <activation>
    <property>
      <name>!Type</name>
    </property>
   </activation>
</profile>
<profile>
  <id>B</id>
  <activation>
    <property>
      <name>Type</name>
      <value>B</value>
    </property>
   </activation>
</profile>
<profile>
  <id>C</id>
  <activation>
    <property>
      <name>Type</name>
      <value>C</value>
    </property>
   </activation>
</profile>
<profile>
  <id>D</id>
</profile>

现在跟随我的工作(虽然它有点hacky!),因为我问: mvn包-DType = B(不应激活A)
mvn包-PType = C(不应激活A)
mvn包-P D(应激活A)
mvn包(应激活A)