如何读取依赖项输出中的+---和\-



当我运行dependencies任务时,我看到一个依赖关系图,其中一些条目前面是+---,而一些条目后面是---。这两个符号分别是什么意思?

例如,当我为Android应用程序运行gradle :app:dependencies --configuration debugCompileClasspath时,我看到一个条目如下:

+--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10
|    +--- org.jetbrains.kotlin:kotlin-stdlib:1.6.10
|    |    +--- org.jetbrains:annotations:13.0
|    |    --- org.jetbrains.kotlin:kotlin-stdlib-common:1.6.10
|    --- org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.6.10
|         --- org.jetbrains.kotlin:kotlin-stdlib:1.6.10

+---标志着对其旁边条目的内部依赖项列表进行扩展的开始。在您的案例中,它启动了org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10的依赖项列表。正如您所看到的,下一行有点缩进,这是父org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10的第一个依赖项。

---标志着在该深度上打开的列表的扩展结束。在您的案例中,--- org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.6.10org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10列表中的最后一个依赖项。而这种依赖关系只有一个内部依赖关系,即org.jetbrains.kotlin:kotlin-stdlib:1.6.10

有很多依赖关系,但我缺少一个更好的词。我希望我不会让你更困惑:D

这是基于字符的艺术作品,表示嵌套级别的提高;符号本身除了视觉外观之外没有任何意义。嵌套项是它所嵌套的项的可传递依赖项。

示例

举个例子:

+--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10
|    +--- org.jetbrains.kotlin:kotlin-stdlib:1.6.10
|    |    +--- org.jetbrains:annotations:13.0
|    |    --- org.jetbrains.kotlin:kotlin-stdlib-common:1.6.10
|    --- org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.6.10
|         --- org.jetbrains.kotlin:kotlin-stdlib:1.6.10

在本例中,kotlin-stdlibkotlin-stdlib-jdk7都是kotlin-stdlib-jdk8的传递依赖关系。同样地,annotations&CCD_ 16是CCD_。CCD_ 18是CCD_。

在标准的HTML列表形式中,这种呈现将与以下内容相同:

  • org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10
    • org.jetbrains.kotlin:kotlin stdlib:1.6.10
      • org.jetbrains:注释:13.0
      • org.jetbrains.kotlin:kotlin-stdlib公共代码:1.6.10
    • org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.6.10
      • org.jetbrains.kotlin:kotlin stdlib:1.6.10

以下是列表的不同文本呈现,使用基于绘图的字符而不是纯ASCII字符,这可能会使事情变得更清楚:

┌─── org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10
│    │
│    ├─── org.jetbrains.kotlin:kotlin-stdlib:1.6.10
│    │    │
│    │    ├─── org.jetbrains:annotations:13.0
│    │    │
│    │    └─── org.jetbrains.kotlin:kotlin-stdlib-common:1.6.10
│    │
│    └─── org.jetbrains.kotlin:kotlin.stdlib-jdk7:1.6.10
│         │
│         └─── org.jetbrains.kotlin:kotlin-stdlib:1.6.10

在本例中,Gradle使用+---,而不是├───来指示下面还有其他项的嵌套项;它使用---而不是└───来指示最后一个嵌套项。

最新更新