我有一个对Maven来说非常罕见的构建周期,而且我不知道我是否错过了某个功能或其他内容。
我的产品有6种构建组合(目前为止),未提及根据配置文件中设置的环境(开发,测试,发布)而有所不同的构建。
这些组合实际上是两个变量的结果,它们是运行的应用程序服务器(Weblogic或JBoss),另一个是要使用的数据库(Oracle,PostgreSQL,MySQL)。当我发布它时,我需要通过Jenkins构建将6种不同的.war组合存档到Nexus存储库中。
每种类型的构建都会更改8-10个变量,以便为要部署的环境进行正确构建。
我想要一些简单的改变,就像配置文件选项一样,所以我只改变一次变量,并且构建的所有变量都会自动改变。
执行此操作的唯一方法是为每个环境制作6个不同的配置文件,从而产生18个配置文件,例如development-weblogic-mysql
,release-jboss-postgresql
等。
或者Maven中有一个我失踪的功能?
答案 0 :(得分:3)
您可以为app container,db和environment
指定部分配置文件然后在构建时激活多个配置文件,例如:
mvn package -P weblogic,mysql,development
您是否应该进行特定于环境的构建(开发/发布/测试)?