我正在寻找一种方法,让Spring Boot在不使用Spring Boot Pom作为我的父Pom的情况下管理一些插件版本。基本上,我不需要父pom(长话说,但我不想要一个)。但是,我仍然希望对版本和插件进行版本管理。我从spring文档中找到了以下解决方案来管理依赖项版本,但是找不到如何管理插件版本。是否有与下面的逻辑类似的东西来管理插件的版本?
<dependencyManagement>
<dependencies>
<dependency>
<!-- Import dependency management from Spring Boot -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.0.4.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
下面是我要管理的示例。在以前的项目中,我的父pom将负责某些插件的版本。
<plugin>
<groupId>some group<groupId>
<artifactId>some artifact</artifactId>
<version>I want this managed without a parent pom</version>
谢谢!
答案 0 :(得分:0)
您需要自己进行管理。如记录所述,父级处理pluginManagement
之类的项目,这些是您使用BOM表时无法获得的。对于Spring Maven插件,您可以将其绑定到所使用的BOM表的任何版本,因为它们的版本相同。
如果您不想使用spring-boot-starter-parent,仍然可以通过使用scope = import依赖项来保持依赖项管理(而不是插件管理)的好处,如下所示:
另外,maven文档中没有像插件的BOM这样的东西
此部分仅对pom类型的依赖项支持此作用域。它指示要在指定的POM部分中用有效的依赖关系列表替换的依赖关系。由于已将它们替换,因此具有导入范围的依赖项实际上并不参与限制依赖项的可传递性。
修改
我确实找到了这个https://release-engineering.github.io/pom-manipulation-ext/guide/plugin-manip.html
根据您的POM等的复杂程度以及为什么不想从Spring的父级继承而来,这可能有用。