在下面的脚本中:
val kotlinVersion by extra ("1.3.61")
println("Version "+kotlinVersion)
plugins {
kotlin("jvm") version kotlinVersion
}
正确打印了kotlinVersion
变量。但是,它在plugins
块中无法识别,并且出现以下错误:e: /home/achadde/sources/kotlin/minichain/build.gradle.kts:6:27: Unresolved reference: kotlinVersion
我怎样才能解决这个问题? 最佳答案
如果您使用IntelliJ,它将向您显示更多信息:
定义this@Build_gradle
的外部范围(kotlinVersion
)在this@plugins
范围中不可用,因此您必须在插件lambda内定义kotlinVersion
。
由于extra
委托(delegate)不可用,因此您也无法使用它:
plugins {
val kotlinVersion = "1.3.61"
// ...
}
不幸的是,使用标签不起作用:
val kotlinVersion by extra ("1.3.61")
plugins {
// ... Unresolved reference: kotlinVersion
kotlin("jvm") version this@Build_gradle.kotlinVersion
}