从命令行设置依赖项的版本

问题描述 投票:0回答:1

我想从命令行设置 POM 中依赖项的版本。很像

versions:set
(对于项目的版本),但是对于特定的依赖项。

我不想制作任何 XML 扫描工具,因为指定版本的方法有很多种,而且很难全部处理。

maven dependencies versions-maven-plugin
1个回答
9
投票

如果您知道您的依赖项版本是在

dependency
dependencyManagement
博客中指定的,并且版本不是属性,您可以使用 use-dep-version:

mvn versions:use-dep-version -Dincludes=io.netty:netty-all -DdepVersion=1.0 -DforceVersion=true

但是,如果将版本指定为属性,则

use-dep-version
将不起作用。

那么你只能使用

versions:*-property
命令,但为此你需要知道属性的名称(这可以通过为这些属性制定命名约定来实现)

mvn versions:set-property -DnewVersion=1.0 -Dproperty=netty-all.version

如果您需要更多安全性以确保您将使用的版本有效或避免降级,请查看update-property

如果您的项目混合了版本和属性版本,您只需运行这两个命令即可更改它。

2024 年更新: Maven 目标

use-dep-version
现在具有属性 processProperties,如果设置为
true
也会导致属性发生更改。不再需要使用
versions:*-property

© www.soinside.com 2019 - 2024. All rights reserved.