如何在 build.gradle.kts 中为 compileJava (Java 11) 和 compileKotlin (Kotlin 1.8) 配置 JVM 兼容性?
大家好!我是 Kotlin 和 Gradle 的新手,在项目中配置 Java 和 Kotlin 的 JVM 版本兼容性时遇到了问题。
我使用带有 Kotlin DSL 的 Gradle (build.gradle.kts)。项目中有混合代码:主要是 Kotlin 1.8,以及几个 Java 11 类。当我运行构建时,Gradle 报错说 compileJava 和 compileKotlin 任务使用了不同的目标 JVM 版本。例如:
- compileJava 配置为 Java 11 (target = 11)
- compileKotlin 配置为 Java 8 (默认)
我希望两个编译器使用相同的 JVM 版本,比如 Java 11。但如何在 build.gradle.kts 中正确实现呢?我尝试了不同的方法,但都不起作用。
以下是我当前的 build.gradle.kts 文件:
```kotlin
plugins {
java
kotlin("jvm") version "1.8.0"
}
java {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
tasks.withType {
options.release.set(11)
}
```
但