2011-09-15 67 views
1

我的项目将为alpha,beta和prod构建提供不同的资源。我使用python脚本来构建和部署,并且只是简单地将一个变量传递给构建,以表示我们构建的是哪个版本。maven为alpha,beta,prod构建配置

这样

mvn package -DbuildMode=beta 

我想有我的资源建立这样

java/main/resources 
java/main/resources-alpha 
java/main/resources-beta 
java/main/resources-prod 

所以,如果我发送β链可变区,Maven会使用

java/main/resources 
java/main/resources-beta 

时其建立战争档案。

我该如何开始在我的pom文件中配置这个?即时运行maven 3.0.3

回答

0

您应该使用maven配置文件。

它们可以直接从命令行激活,也可以通过检查某些环境工件(属性,文件等)来激活。

这里是制品 - >http://maven.apache.org/guides/introduction/introduction-to-profiles.html

在本例中,它使用属性激活

<profile> 
    <id>beta</id> 
    <activation> 
    <property> 
     <name>buildMode</name> 
     <value>beta</value> 
    </property> 
    </activation> 
    <build> 
    <resources> 
     <resource> 
     ... 
     <directory>${basedir}/src/main/resources-beta</directory> 
     ... 
     </resource> 
    </resources> 
    </build> 
</profile>