首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >非交互式地更新Maven项目版本以发布版本

非交互式地更新Maven项目版本以发布版本
EN

Stack Overflow用户
提问于 2016-07-06 12:56:52
回答 3查看 1.1K关注 0票数 0

我希望将Maven项目的版本更新为与当前快照版本相对应的发布版本。1.2-SNAPSHOT应该变成1.2。换句话说,我只想从版本中删除-SNAPSHOT后缀。我想以一种非交互的方式这样做,这样我的CI工具就可以执行这个操作。

我知道这可以通过maven-release-pluginmaven-versions-plugin以及其他插件来完成。我对maven-versions-plugin有一个偏好,因为它很好地处理聚合器项目。

这两个插件都提示输入新版本,但允许您在命令行上提供版本。如何提供相对于当前快照版本的新版本?如前所述,我只想删除-SNAPSHOT部分。

因此,要明确:

  • 我只想更新这个项目的版本,而不是发布插件提供的所有其他东西。
  • 我不想指定版本号,但只需将版本更新为“-SNAPSHOT之前的任何内容”。
EN

回答 3

Stack Overflow用户

发布于 2016-07-06 13:01:45

maven发布插件完全按照您的要求运行,并且可以在非交互模式下运行,以执行以下步骤:

构建项目

标记代码

将更改推送到您的SCM

将版本修改为第一版

再建

将版本化的jar/war/ear/zip推送到您选择的存储库

标签和推送

将版本号设置为下一个快照版本。

等。

都是自动完成的。

票数 0
EN

Stack Overflow用户

发布于 2016-07-06 13:02:53

使用您的CI工具,您应该能够直接编辑POM中的标记。

这是我的一个小项目的片段。

代码语言:javascript
复制
<modelVersion>4.0.0</modelVersion>
<groupId>com.organization</groupId>
<artifactId>pdf_tiff_conversion</artifactId>
<version>1.0-SNAPSHOT</version> // Edit this tag
<packaging>jar</packaging>
票数 0
EN

Stack Overflow用户

发布于 2016-07-06 13:05:45

使用版本-maven-plugin:

代码语言:javascript
复制
mvn org.codehaus.mojo:versions-maven-plugin:2.1:set -DnewVersion=1.2 -DgenerateBackupPoms=false

不幸的是,这迫使您提供版本号(1.2),它不会删除-SNAPSHOT,但它是一个比发布插件简单得多的解决方案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38224599

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档