如何解决 BOM 的 dependencyManagement 依赖项?
How can I resolve my BOM's dependencyManagement dependencies?
我有一个 Maven BOM(物料清单)用于一个相当大的项目,该项目在 <dependencyManagement>
块中包含数百个依赖项。在为我公司的其他人发布它之前,我想验证所有的依赖关系都可以成功解决。
不幸的是,命令 mvn dependency:resolve
(以及其他 dependency
命令,如 dependency:tree
)似乎只能在标准 <dependencies>
块上运行,但会忽略 <dependencyManagement>
。我可以使用其他命令来执行此操作吗?
这是我也需要的东西,所以我今天花了几个小时来制作一个插件。添加这个
<plugin>
<groupId>com.commsen.maven</groupId>
<artifactId>bom-helper-maven-plugin</artifactId>
<version>0.1.0</version>
<executions>
<execution>
<id>resolve</id>
<phase>verify</phase>
<goals>
<goal>resolve</goal>
</goals>
</execution>
</executions>
</plugin>
BOM 的 pom
应该在 verify
阶段使其成为 运行 并尝试解决 dependencyManagement
部分中的每个依赖关系。
我用非常大的 BOM 对其进行了测试,它似乎可以完成工作。
也就是说,它的设计不是很好,也不是可配置的。可能有很多问题(例如它不考虑限定符)需要修复并进行改进。
试一试,如果您发现它总体上有用,但希望做得更多或更好,请 open an issue or better yet, send a pull request ;)
我有一个 Maven BOM(物料清单)用于一个相当大的项目,该项目在 <dependencyManagement>
块中包含数百个依赖项。在为我公司的其他人发布它之前,我想验证所有的依赖关系都可以成功解决。
不幸的是,命令 mvn dependency:resolve
(以及其他 dependency
命令,如 dependency:tree
)似乎只能在标准 <dependencies>
块上运行,但会忽略 <dependencyManagement>
。我可以使用其他命令来执行此操作吗?
这是我也需要的东西,所以我今天花了几个小时来制作一个插件。添加这个
<plugin>
<groupId>com.commsen.maven</groupId>
<artifactId>bom-helper-maven-plugin</artifactId>
<version>0.1.0</version>
<executions>
<execution>
<id>resolve</id>
<phase>verify</phase>
<goals>
<goal>resolve</goal>
</goals>
</execution>
</executions>
</plugin>
BOM 的 pom
应该在 verify
阶段使其成为 运行 并尝试解决 dependencyManagement
部分中的每个依赖关系。
我用非常大的 BOM 对其进行了测试,它似乎可以完成工作。
也就是说,它的设计不是很好,也不是可配置的。可能有很多问题(例如它不考虑限定符)需要修复并进行改进。
试一试,如果您发现它总体上有用,但希望做得更多或更好,请 open an issue or better yet, send a pull request ;)