gradle之buildscript的坑

allprojects {
    ext {
        springBootVersion = "1.4.1.RELEASE"
        springDataVersion = "Hopper-SR4"
        springCloudVersion = "Camden.SR1"
    }
}
buildscript {
    dependencies {
        classpath "io.spring.gradle:dependency-management-plugin:0.6.1.RELEASE"
        classpath "org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}"
        classpath 'com.bmuschko:gradle-docker-plugin:3.0.0'
    }
}

之前一直将版本定义在init.gradle,今天移到了build.gradle发现不行,报错:
Could not get unknown property 'springBootVersion' for object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

百度和谷歌了很久无果,后来println springBootVersion居然能打印出来,再谷了一下,找到了以下解释后大彻大悟
The buildscript {} block is evaluated before anything else in the script (regardless of location in file).

你可能感兴趣的:(gradle之buildscript的坑)