列出所有子项目的 gradle 个依赖项
list gradle dependencies for all subprojects
我可以使用 ./gradlew -q dependencies
.
查询 Gradle 项目的依赖关系树
我还可以 运行 使用 ./gradlew service:dependencies
查询 service
子项目。
如何在不修改gradle.properties文件的情况下从命令行自动列出所有子项目的依赖项?
提前致谢。
我相信 Gradle 中没有内置方法来实现这一点(无需调整构建配置)——除非您手动列出所有子项目的 dependencies
任务,如:
./gradlew sub1:dependencies sub2:dependencies sub1:subsub:dependencies
但是,如果您经常需要此功能,则可以为它创建一个 shell 别名。 bash 中的示例(例如,将其放入您的 ~/.bashrc
文件中):
alias gradle-all-deps='./gradlew dependencies $(./gradlew -q projects \
| grep -Fe ---\ Project \
| sed -Ee "s/^.+--- Project '"'([^']+)'/:dependencies/"'")'
然后只需从根项目目录调用 gradle-all-deps
。
在根项目的 build.gradle 文件中添加以下任务
subprojects {
task allDeps(type: DependencyReportTask) {}
}
并从根项目执行以下命令
./gradlew allDeps
这将列出所有子项目的依赖项。
此外,如果您想根据类型(compileClasspath、testRuntime ...)缩小依赖关系图,请参考this
我可以使用 ./gradlew -q dependencies
.
我还可以 运行 使用 ./gradlew service:dependencies
查询 service
子项目。
如何在不修改gradle.properties文件的情况下从命令行自动列出所有子项目的依赖项?
提前致谢。
我相信 Gradle 中没有内置方法来实现这一点(无需调整构建配置)——除非您手动列出所有子项目的 dependencies
任务,如:
./gradlew sub1:dependencies sub2:dependencies sub1:subsub:dependencies
但是,如果您经常需要此功能,则可以为它创建一个 shell 别名。 bash 中的示例(例如,将其放入您的 ~/.bashrc
文件中):
alias gradle-all-deps='./gradlew dependencies $(./gradlew -q projects \
| grep -Fe ---\ Project \
| sed -Ee "s/^.+--- Project '"'([^']+)'/:dependencies/"'")'
然后只需从根项目目录调用 gradle-all-deps
。
在根项目的 build.gradle 文件中添加以下任务
subprojects {
task allDeps(type: DependencyReportTask) {}
}
并从根项目执行以下命令
./gradlew allDeps
这将列出所有子项目的依赖项。
此外,如果您想根据类型(compileClasspath、testRuntime ...)缩小依赖关系图,请参考this