我正在寻找管理我的maven项目版本的可能性。
我的maven项目中有一些maven模块,其中一些模块依赖于其他模块。
我想定义要为每个模块或依赖项全局使用的版本。
这有可能吗?
像
这样的东西globalVersion=2.0
<groupId>test</groupId>
<artifactId>test</artifactId>
<version>${globalVersion}</version>
但正如我所说,不是每一个pom。我的意思是我的maven模块中的所有poms全局。
答案 0 :(得分:5)
(我假设您的所有模块都有一个共同的父pom。)
在父pom中定义一个属性:
<properties>
<globaleVersion>1.0.0</globalVersion>
</properties>
并在父pom中定义<dependencyManagement>
部分:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>test</groupId>
<artifactId>test</artifactId>
<version>${globalVersion}</version>
</dependency>
<dependency>
<groupId>A</groupId>
<artifactId>A</artifactId>
<version>${globalVersion}</version>
</dependency>
</dependencies>
</dependencyManagement>
在你的模块中定义依赖项而不指定版本(maven会从父项的dependencyManagement部分找到它)
<dependencies>
<dependency>
<groupId>test</groupId>
<artifactId>test</artifactId>
</dependency>
<dependency>
<groupId>A</groupId>
<artifactId>A</artifactId>
</dependency>
</dependencies>