我有一个相当大的项目的 Maven BOM(材料清单),其中包含<dependencyManagement>
块内的数百个依赖项。我想在为我公司的其他人发布之前验证是否可以成功解决所有依赖项。
不幸的是,该命令mvn dependency:resolve
(以及其他dependency
类似的命令dependency:tree
)似乎只在标准<dependencies>
块上运行,但忽略了<dependencyManagement>
. 我可以使用其他命令来执行此操作吗?
我有一个相当大的项目的 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 对其进行了测试,它似乎完成了工作。
也就是说,它的设计不是很好,也不是可配置的。可能有很多问题需要修复和改进(例如,它不考虑限定符)。