我有一个项目pom和一个父pom。父pom定义依赖关系如下:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.mycode/groupId>
<artifactId>common</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
我的项目pom继承了父项并定义了依赖项。
<parent>
<groupId>au.com.truelocal</groupId>
<artifactId>truelocal-parent</artifactId>
<version>develop</version>
</parent>
<dependencies>
<dependency>
<groupId>com.mycode</groupId>
<artifactId>common</artifactId>
</dependency>
</dependencies>
我曾经以这种方式使用Maven构建而没有问题。
我现在想要开始在父,普通和项目中使用不同的版本。
我将使用maven版本插件来设置我的版本。
我正在成功设置父版本和版本,但是,maven一直在寻找错误版本的common。例如。如果我的项目正在构建为1.0.0-4版本,那么它会查找common-1.0.0-4,但实际上我需要它来获取最新版本的common,而不是例如1.0.0-23。
我可以使用版本插件来调整我的依赖版本吗?我如何使它只适用于我可能拥有的普通而非其他依赖?
答案 0 :(得分:0)
mvn versions:set
(我想这就是你已经完成的)设置项目的版本,分别是作为多模块项目一部分的项目版本。
它没有触及依赖项的版本,它们是在<dependencyManagement>
内的父pom或<dependencies>
内配置的。
您可以通过多种方式调整依赖项版本:mvn versions:display-dependency-updates
,mvn versions:use-latest-releases
,mvn versions:use-latest-snapshots
。
使用mvn versions:help
或mvn versions:help -Ddetail=true -Dgoal=use-latest-snapshots
获取更多信息。