Maven:在例如使用不同的插件配置部署

时间:2013-05-09 11:18:53

标签: maven maven-3

对于一个android maven项目(由一个由主项目和一个测试项目组成的父项目组成),我希望能够使用不同的插件配置来构建整个项目。

我知道我可以使用个人资料执行此操作,但还有其他选项吗?

我想要实现的是使用“mvn deploy”执行部署并使用不同的插件配置,只有在部署(或发布)时才会使用。

一个具体的例子是,只有在部署发生时才增加android版本代码。将版本代码的增加直接绑定到部署阶段不起作用,因为在流程资源阶段正常工作之前需要增加的版本代码。

1 个答案:

答案 0 :(得分:0)

我担心maven配置文件是你唯一的选择。

如果配置文件未处于活动状态,您可以在deploy阶段添加强制执行程序检查以使构建失败:

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-enforcer-plugin</artifactId>
  <version>1.2</version>
  <executions>
     <execution>
       <phase>deploy</phase> <!-- enfoce rules on `mvn deploy` -->
       <goals>
         <goal>enforce</goal>
       </goals>
     </execution>
  </executions>
  <configuration>
     <rules>
       <requireActiveProfile>
         <profiles>prod</profiles> <!-- require `-Pprod` -->
       </requireActiveProfile>
     </rules>
  </configuration>
</plugin>