什么是Gradle工件依赖关系图命令?

我在Gradle文档中阅读了这个评论:

To deal with problems due to version conflicts, reports with dependency graphs are also very helpful. Such reports are another feature of dependency management. 

我带了一些jar子,但我需要弄清楚它来自哪里。 通常我只是全局排除它,但我需要在这里的层次结构信息。 我如何从Ivy和Maven获得这些信息?

更别说有人把Hibernate的jar包(很多)带到我的jar列表中,我真的很想知道谁不是使用Hibernate,并试图去除这个依赖关系。

这个命令是gradle dependencies ,它的输出在Gradle 1.2中有很大的改进。 (你今天可以试试1.2-rc-1。)

啊,因为我的主项目没有依赖关系,所以“gradle dependencies”只列出那些而不是子项目依赖关系,所以正确的命令最终成为

  gradle :<subproject>:dependencies 

所以对我来说这是

  gradle :master:dependencies 

如果您想查看项目的依赖关系,并且所有子项目都在您的顶级build.gradle中使用:

 subprojects { task listAllDependencies(type: DependencyReportTask) {} } 

然后调用gradle:

 gradle listAllDependencies 

如果你有很多configuration,输出可能会很长。 要仅显示运行时configuration的依赖关系,请运行

 gradle dependencies --configuration runtime 

如果你想recursion包含子项目,你可以随时自己写:

粘贴到顶级build.gradle

 task allDeps << { println "All Dependencies:" allprojects.each { p -> println() println " $p.name ".center( 60, '*' ) println() p.configurations.all.findAll { !it.allDependencies.empty }.each { c -> println " ${c.name} ".center( 60, '-' ) c.allDependencies.each { dep -> println "$dep.group:$dep.name:$dep.version" } println "-" * 60 } } } 

运行:

 gradle allDeps