【问题标题】:How to pass parameterized newVersion argument to the set goal of Versions Maven Plugin?如何将参数化的 newVersion 参数传递给版本 Maven 插件的设定目标?
【发布时间】:2015-09-16 13:25:13
【问题描述】:

从 maven 3.2.1 开始,可以安全地(即没有警告)use property expressions in versions,例如 ${revision}${changelist} ${sha1}

现在,问题是我想使用版本 Maven 插件的设定目标将我的多模块项目的版本更新为 1.0-${revision} 之类的东西,但在运行之后我最终得到版本 1.0-null 而不是 1.0-${revision}。我使用的确切 Maven 命令如下所示:

mvn versions:set -DnewVersion=0.1-${revision}

我尝试转义 newVersion 中的 ${} 特殊字符,但无济于事。

我可以单独更新每个模块的版本,但是这样做很乏味。

任何帮助将不胜感激。

【问题讨论】:

  • 你有没有试过像下面的0.1-\${revision}一样引用0.1-${revision}来防止被shell扩展...
  • 是的。我也尝试过 0.1-$\{revision\},如 this blog 条目所示。

标签: java maven


【解决方案1】:

所以,最终对我有用的是运行版本 Maven 插件的设定目标没有任何参数,如下所示:

mvn versions:set

在执行过程中,我被要求为我的项目提供新版本,因此我键入 0.1-${revision} 没有转义任何字符,并且新版本已正确设置为提供的值。

【讨论】:

    猜你喜欢
    • 2013-04-06
    • 2016-11-20
    • 1970-01-01
    • 2021-10-03
    • 2019-09-29
    • 1970-01-01
    • 2021-02-26
    • 2020-11-06
    • 2013-04-03
    相关资源
    最近更新 更多