Gradle 不断收到“无法获取根项目的未知属性”错误

jos*_*lan 4 gradle build.gradle

作为 gradle 的新手,我试图让我的构建步骤取决于自定义任务。

我的build.gradle包含以下代码:

repositories {
  jcenter()
}

apply plugin: 'base'

defaultTasks 'build'
build.dependsOn compileAll

task compileAll {
  doLast {
    println "hello" 
  }
}
Run Code Online (Sandbox Code Playgroud)

如果我删除这build.dependsOn compileAll条线,效果很好。我想我做错了什么,但我不确定是什么。

M.R*_*uti 5

问题是您在实际声明任务之间build和之前创建了依赖关系。因此 Gradle 不知道此任务并生成错误。请记住,构建脚本实际上是真正的脚本,指令/块的顺序很重要。compileAllcompileAllCould not get property...

这将起作用:

// first declare "compileAll" task
task compileAll {
    doLast {
        println "hello"
    }
}
// then you can reference this compileAll task declare above
build.dependsOn compileAll
Run Code Online (Sandbox Code Playgroud)