【问题标题】:Is there an option for gradle dependencies to show just the list of libraries是否有 gradle 依赖项的选项来仅显示库列表
【发布时间】:2021-03-02 07:14:19
【问题描述】:

有简短的表格吗?除了依赖项,我们可以只看到使用的库的平面列表吗? ./gradlew -help 没有显示任何内容。比如:

org.jetbrains.kotlinx:kotlinx-coroutines-jdk8:1.3.7
com.android.support:recyclerview-v7:28.0.0
...

【问题讨论】:

  • 嗯,这很复杂,有不同的构建变体、常规与测试代码、传递依赖等。./gradlew app:dependencies 将打印app 模块的依赖报告,但我不确定是否这就是你想要的。
  • 即使使用./gradlew app:dependencies,它也会打印一个依赖树。我正在寻找的是一个去重的平面列表。对我来说,用例是查看两个提交之间是否添加了新的依赖项。不确定是否有其他方法可以做到这一点。

标签: android gradle dependencies


【解决方案1】:

打印您需要比较的类路径 - 在更改之前和之后一次 - 然后您可以进行差异化

task runCP() {
    doLast {
        def runList = configurations.runtimeClasspath.asList()
        def compileOnlyList = configurations.compileOnly.asList()
        println(runList.join("\n"))
        println("----")
        println(compileOnlyList.join("\n"))
        println("====")
    }
}

【讨论】:

    【解决方案2】:

    如果 ./gradlew app:dependencies 对您不起作用,Gradle Enterprise 确实提供了用于比较 2 个构建的仪表板(例如,如果您有 2 个来自不同提交的构建)。从仪表板中,您可以查看版本是否已更改,或者是否添加了新库。它还显示所有配置类型,例如annotationProcessorClasspath、compileClasspath、RuntimeClasspath 等 但它不是免费的。

    【讨论】:

      猜你喜欢
      • 2022-01-13
      • 1970-01-01
      • 2013-02-10
      • 2021-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多