我应该使用release:在发布之前准备:执行吗?

时间:2016-06-21 01:01:33

标签: maven

我的常规CI构建需要1小时,发布版本需要2小时。我可以跳过发布:准备并直接发布:执行以节省时间吗?我会想念什么? 如果我不能跳过这个,可以通过其他方式减少发布构建时间吗?

由于

Nube to mvn

1 个答案:

答案 0 :(得分:1)

简短的回答是不,你不能跳过释放:准备目标。如果你想要更多,请继续阅读。

来自maven发布插件documentation

  

准备SCM中的发布。逐步完成几个阶段以确保POM已准备好发布,然后准备SCM最终包含发布的标记版本以及所用参数的本地副本中的记录。

实际上做的是以下内容:

  1. 将所有x-SNAPSHOT版本修改为x。因此 1.0-snapshot 将变为 1.0
  2. 构建所有内容以确保在版本更改后仍然可以编译和测试
  3. 提交更改(并在SCM中标记)
  4. 将所有版本升级到下一个 SNAPSHOT 版本,在我们的案例中 1.1-SNAPSHOT
  5. 提交此新更改
  6. 此流程的预期副产品是包含要为版本构建的poms的文件:执行目标,这就是为什么您不能跳过版本:prepare

    如果您仍然对缩短构建时间感兴趣,并且不关心SCM的所有提交,您可以使用 maven-versions-plugin实现自己的发布机制(我不建议) maven-deploy-plugin 。有关详细信息,请参阅this