Gradle:子模块中没有抛出 class 错误的 属性?

Gradle: No such property for class error thrown in sub-module?

我正在尝试使用 this answer 中描述的技术在我的 gradle 项目中声明 dependencies

然而,当我这样做时,我得到了这个错误:

No such property: libraries for class

我该如何解决这个问题?

在顶级 build.gradle 中声明为属性的依赖项如下:

ext.libraries = [


junit: 'junit:junit:4.10'

]

正在尝试检索 模块级别 build.gradle 中的依赖项(抛出错误):

testCompile([
              libraries.junit
])

抛出错误:

No such property: libraries for class: org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler
  1. 在您的顶级 settings.gradle 中,包括您的子项目:

    include 'subproject'
    
  2. 在您的顶层 build.gradle 定义您的分机属性:

    ext.libraries = [junit: 'junit:junit:4.10']
    

它不一定是地图,如果您只使用 1 个值,但我坚持使用您的格式。

  1. 要在您的 subproject build.gradle 中使用它:

    dependencies{
      testCompile libraries.junit 
    }