如何列出Maven中的所有`dependencyManagment`?

Eld*_*rry 4 dependency-management maven

我在 Maven 项目中使用了一些 BOM 依赖项,例如:

<dependencyManagement>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>${spring-boot.version}</version>
        <type>pom</type>
        <scope>import</scope>
    </dependency>
    ...
</dependencyManagement>
Run Code Online (Sandbox Code Playgroud)

每当我需要添加依赖项时,我想知道该依赖项是否已在dependencyManagement我导入的任何依赖项中声明,这样我就不需要为其指定版本。

现在我手动执行此操作,转到这些 BOM 文件的源进行检查,但有时一个 BOM 也会导入其他 BOM,例如:spring-boot-dependencies导入netty-bomjackson-bom. 所以我想知道有没有办法列出(展平)我所有的dependencyManagement

gjo*_*anv 8

我认为使用 Maven 能做的最好的事情就是mvn help:effective-pom使用 grep 查找相关依赖项。它将向您显示有效的 pom,包括扩展的 BOM dependencyManagement。

此外,如果您使用 IntelliJ 之类的 IDE,它将显示托管依赖项的“向上箭头”符号,包括通过 BOM 拉入的依赖项。

  • “mvn help: effective-pom -Dverbose” 添加声明来源的确切引用 (6认同)