【发布时间】:2019-10-30 17:24:58
【问题描述】:
例如:
maven-release-plugin prepare perform 要求没有 SNAPSHOT 依赖项,这会破坏持续集成,以防在发布前没有被验证,相反,flatten-maven-plugin 只需要 -Drevision -Dchangelist scm:tag 标记发布版本而不验证 SNAPSHOT 依赖项。
【问题讨论】:
例如:
maven-release-plugin prepare perform 要求没有 SNAPSHOT 依赖项,这会破坏持续集成,以防在发布前没有被验证,相反,flatten-maven-plugin 只需要 -Drevision -Dchangelist scm:tag 标记发布版本而不验证 SNAPSHOT 依赖项。
【问题讨论】:
在发布版本中包含 SNAPSHOT 依赖项总是一个坏主意。构建变得不可重现。
Maven 发布插件为您提供了一个彻底且经过深思熟虑的发布过程。关于它的某些方面有不同的意见,如果你不喜欢它们,你可以构建自己的方式,可能在你的构建服务器(Jenkins)而不是 Maven 中。
【讨论】:
prepare perform 所做的更改。
versions:use-releases -DfailIfNotReplaced=true。如果存在 SNAPSHOT 依赖项且无法替换,则构建几乎会立即失败。
prepare perform 对于 CI 来说是丑陋的。