Maven:如何找到依赖于另一个工件的工件

raj*_*0cs 6 java maven

让我们说,ArtifactA依赖于ArtifactB和ArtifactC也依赖于ArtifactB

我知道"mvn依赖插件"可以帮助列出项目/工件的依赖关系.

但反过来怎么样?如果我想找到依赖于给定工件的项目/工件列表?从上面的例子中,给定ArtifactB,我想获得ArtifactA和ArtifactC

我怎样才能做到这一点?

Sea*_*oyd 5

Maven只能在当前项目上运行,因此它只能检测当前项目(或子模块)与其他项目(包括当前项目的子模块)之间的依赖关系.

所以你可以做的是根据其他子模块搜索特定的子模块:

                      mycompany:parent
                    /                  \
         mycompany:child1       mycompany:child2
            /                 /                  \
  mycompany:grandchild1   mycompany:grandchild2   mycompany:grandchild3
Run Code Online (Sandbox Code Playgroud)

这是你如何找到所有与grandchild3有依赖关系的子项目:

mvn validate -pl child2/grandchild3 -amd
Run Code Online (Sandbox Code Playgroud)

这将validate在当前项目中依赖于孙子3的所有项目上运行阶段.