我正在尝试将build.gradle文件设置为一站式购买版本号。我已经能够在dependencies {}块中使用字符串替换,但是没有对插件{}块做相同的运气。目前看起来像这样:
buildscript {
ext {
ver = [
springBoot: "2.1.2.RELEASE",
]
}
}
plugins {
id "org.springframework.boot" version "2.1.2.RELEASE"
}
dependencies {
compile "org.springframework.boot:spring-boot-gradle-plugin:${ver.springBoot}"
compile "org.springframework.boot:spring-boot-starter-web:${ver.springBoot}"
compile "org.springframework.boot:spring-boot-starter-actuator:${ver.springBoot}"
}
如果我将plugins块更改为此(或我尝试过的几种类似变体):
plugins {
id "org.springframework.boot" version "${ver.springBoot}"
}
然后我得到这个错误:
Could not compile build file 'C:\GitRepos\groovy-rest-template\project\build.gradle'.
> startup failed:
build file 'C:\GitRepos\groovy-rest-template\project\build.gradle': 59: argument list must be exactly 1 literal non empty string
我不喜欢使用buildscript {ext {}}设置,这只是我发现的第一个对我们有90%工作方式的系统。一般而言,我还没有找到很多信息,甚至不知道是否可以在plugins块中进行字符串替换。解决方案也不必仅限于build.gradle文件