如何解决 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 ;)