【发布时间】:2012-02-20 21:29:45
【问题描述】:
我们使用 Maven(3.0.3) 作为构建工具,我们需要为不同的环境(DEV、TEST、QA)提供不同的版本。如果我们在构建时根据 environment 传递 version 属性值,则安装的 POM 没有传递的属性值,而是仍然有 ${app-version} 字符串。
我已经看到这个http://jira.codehaus.org/browse/MNG-2971有一个错误
还有其他选择吗,因为我们不能针对不同的环境使用不同的POM文件,这将很难维护..
谢谢 维杰
【问题讨论】:
-
我不认为您真的应该使用 Maven 的安装机制和存储库来为各种暂存环境创建应用程序的部署工件。更好的做法是从源代码控制标签进行部署并在目标服务器上进行构建,或者使用程序集插件创建部署包(过滤配置文件以替换那里的占位符)并分发。
-
在每个部署目标上进行构建,而目前在云环境中很流行,这完全是矫枉过正。