Avatar ·

如何在 build.gradle.kts 中为 compileJava (11) 和 compileKotlin (1.8) 设置 JVM 兼容性?

你好!我是 Kotlin 和 Gradle Kotlin DSL 的新手。我有一个多模块项目,希望所有 Java 代码编译为 Java 11,Kotlin 代码也编译为同一版本(target JVM 1.8 已过时,我想要 11)。我使用 Kotlin 1.8.x 插件和 Java 插件。 问题:在我的 build.gradle.kts 中,我为 Java 设置了 sourceCompatibility 和 targetCompatibility,但 compileKotlin 仍然使用旧的 JVM 目标。如何修复? 以下是我当前的文件: ```kotlin plugins { kotlin("jvm") version "1.8.20" java } java { sourceCompatibility = JavaVersion.VERSION_11 targetCompatibility = JavaVersion.VERSION_11 } tasks.withType { kotlinOptions { jvmTarget = "11" // 或 "1.8"?错误! } } ``` 构建时我收到警告:"w: Using JVM 11 target is not supported for Kotlin JVM compiler 1.8.20" 或者直接不兼容。我尝试设置 `jvmTarget = "11"`,但 Gradle 报错。