如何版本化多个Maven项目?

时间:2019-09-27 16:56:16

标签: maven

我有一个基于Spring Boot的微服务项目的 set 。每个项目都是一个带有根POM的多模块项目,并且模块目录具有自己的POM。每个根POM都有spring-boot-starter-parent构件作为其父构件。

这些多模块项目中的每个当前都已成功构建,并且每个项目都产生3个工件。但是,每个项目都有其自己的版本。

我想完成两件事:

  1. 将此微服务项目的 set 标记为具有跨版本的通用版本 全部。
  2. 在所有方面强制实施一组通用的依赖项版本 它们类似于<dependencyManagement>在项目中的工作方式。 (例如强制每个服务使用版本x.y.zexample-common-dependency依赖性)

在Maven中有可能吗?

如果没有,那么Gradle怎么办?

谢谢您的帮助!

1 个答案:

答案 0 :(得分:0)

是的,有几种方法可以使用Maven完成#1和#2。查看有关POM的Maven文档:https://maven.apache.org/guides/introduction/introduction-to-the-pom.html。每种设置都有其优缺点。即使不是全部,“项目继承”也可以为您完成#1和#2的大部分工作。那可能是一个简单的开始。您可能还想看看使用没有Spring Boot父级https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#using-boot-maven-without-a-parent的Spring Boot。 b / c一个maven项目不能有多个父项,这可以为您提供更大的灵活性。希望这会有所帮助。