构建kotlinx.coroutines遇No matching toolchains found错误求助
解决kotlinx.coroutines构建时的JDK Toolchain匹配问题
问题核心
构建项目时Gradle要求匹配JDK 11的toolchain,但本地仅安装了JDK 19、23、21,且未配置自动下载toolchain的仓库,导致构建失败。
需要检查和处理的内容
安装JDK 11并配置Toolchain
项目依赖JDK 11的编译环境,可安装任意厂商的JDK 11(如Amazon Corretto、Oracle OpenJDK)。安装完成后:- 若Gradle未自动检测到,可在项目根目录的
gradle.properties中指定路径:org.gradle.java.home=C:\\Users\\YourUser\\.jdks\\corretto-11.x.x - 或在模块的
build.gradle.kts中显式配置toolchain:java { toolchain { languageVersion.set(JavaLanguageVersion.of(11)) } }
- 若Gradle未自动检测到,可在项目根目录的
配置Gradle自动下载Toolchain
报错提示未配置toolchain下载仓库,可在项目根目录的settings.gradle.kts中添加插件,让Gradle自动下载匹配的JDK 11:pluginManagement { plugins { id("org.gradle.toolchains.foojay-resolver-convention") version "0.8.0" } }验证JDK 11的检测状态
安装或配置完成后,执行以下命令确认JDK 11被Gradle识别:./gradlew -q javaToolchains检查输出是否包含JDK 11的条目,若未出现,需确认JDK 11的安装路径无特殊字符、权限正常。
无需修改JAVA_HOME
当前JAVA_HOME指向JDK 21不影响Gradle Toolchain的使用,Toolchain会独立调用指定版本的JDK,无需调整系统环境变量。
内容的提问来源于stack exchange,提问作者tse
相关产品推荐
相关产品推荐

