Gradle Kotlin DSL: defina la versión de Kotlin en un lugar único

Para describir los scripts de compilación de Gradle, podemos usar Kotlin a través debuild.gradle.kts archivos Es un problema común definir globalmenteel Versión de Kotlin para ser utilizada, tanto en eldependencies y también en la construcciónplugin sección (es bastante raro tener diferentes versiones en uso para el caso dado).

Considere el siguiente código (Gradle 4.3.1):

plugins {
    var pluginVersion = "1.2.30"
    kotlin("jvm").version(kotlinVersion)
    // more
}

var dependencyVersion = "1.2.30"
dependencies {
    compile(kotlin("stdlib", kotlinVersion))
    compile(kotlin("reflect", kotlinVersion))
    testCompile(kotlin("test", kotlinVersion))
    // more
}

Como puedes ver, el kotlinversion (1.2.30 en este caso) está definidodos veces: dependencyVersion ypluginVersion, que muy a menudono difiere. Debido a las restricciones de DSL, es imposible acceder apluginVersion desde fuera delplugins bloquear o acceder aldependencyVersion desde dentro delplugins bloquear.

¿Cómo puede la cadena de versión,"1.2.30" ser extraído a un solo lugar?

Respuestas a la pregunta(3)

Su respuesta a la pregunta