【问题标题】:How do I add dependencies to grandchildren projects from root?如何从根目录向孙子项目添加依赖项?
【发布时间】:2016-01-16 15:35:43
【问题描述】:

我有一个多级嵌套项目,它分为 3 个级别,我想从根项目 build.gradle 文件中添加一个依赖项到第 3 级。我该怎么做?

例如,我有以下项目结构。根是GP(GrandParent),P1和P2是GP下的直接子项目,GC1和GC2是P1下的子项目,GC3和GC4是P2下的子项目。

GP
|____ P1
......|____GC1
......|____GC2

|____ P2
......|____ GC3
.......... |____ GC4

从 GP 的 build.gradle 中,我想添加对 GC1、GC2、GC3 和 GC4 的依赖项。于是我在 GP 的build.gradle 中尝试了以下方法:

configure(subprojects) {
   compile group: 'org.slf4j', name: 'jul-to-slf4j', version: '1.7.7'
}

在尝试处理 GC1、GC2、GC3 或 GC4 时失败并显示此消息,但通过了 P1 和 P2。

没有方法签名:org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.compile() 适用于参数类型:(org.gradle.api.internal.file.collections.DefaultConfigurableFileCollection) 值: [档案收集] 可能的解决方案:模块(java.lang.Object)

我的settings.gradle

include 'P1', 'P1:GC1', 'P1:GC2',...

【问题讨论】:

    标签: gradle


    【解决方案1】:

    这是来自 gradle 的正确消息。确实没有这样的方法。您缺少的是 dependencies 块。所以应该是:

    configure(subprojects) {
      dependencies {
        compile group: 'org.slf4j', name: 'jul-to-slf4j', version: '1.7.7'
      }
    }
    

    Here你可以找到一个演示。运行gradle :P1:GC1:printDeps 验证它是否有效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-07
      • 1970-01-01
      • 2017-03-07
      • 2020-01-20
      • 2018-05-09
      • 1970-01-01
      • 2015-10-27
      相关资源
      最近更新 更多