`dependencies` 和 `androidDependencies` 之间的输出不同

Output differing between `dependencies` and `androidDependencies`

两者有什么区别

./gradlew :app:dependencies

./gradlew :app:androidDependencies

?

我能注意到的是 androidDependencies 在输出图中包含 .jar.aar。为什么会这样,有没有办法通过 dependencies?

将这些文件包含在依赖项输出中

您可以 运行 ./gradlew :app:tasks 查看 :app 项目中 运行 可用的每个 Gradle 任务的简短描述。我看到的每个 androidDependenciesdependencies Gradle 任务的描述如下:

androidDependencies - Displays the Android dependencies of the project.
dependencies - Displays all dependencies declared in project ':app'.

遗憾的是,这里的描述并没有很好地区分这两个 Gradle 任务。但是,在 运行 两个 Gradle 任务中的每一个上,我都看到输出有两个差异,如下所示:

  1. androidDependencies 任务指出库是打包为 aar 还是 jardependencies 任务不提供此信息。 (你已经在你的问题中指出了这种差异。)
  2. androidDependencies 任务打印项目依赖项的扁平化列表。另一方面,dependencies 任务打印项目依赖项的嵌套图。

这两个任务之间的另一个区别是,您可以为 dependencies 任务提供一个 --configuration 选项,以将其输出限制为单个配置。例如,如果您 运行 ./gradlew :app:dependencies --configuration debugCompileClasspath,这将只显示 debugCompileClasspath 配置的依赖项。 --configuration 选项不适用于 androidDependencies 任务。