You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Qt Creator 5.12.12调试Android应用时Gradle无法识别Java 21.0.2版本

Qt Creator 5.12.12构建Android应用失败:无法从'21.0.2'确定Java版本

环境信息

  • Qt Creator版本:5.12.12
  • Android SDK版本:12.0
  • Android NDK版本:21.3.6528147
  • Gradle版本:8.3
  • JVM版本:21.0.2(Oracle Corporation 21.0.2+13-LTS-58)
  • 操作系统:Linux 6.5.0-17-generic amd64

错误信息

:-1: error: Build failed with an exception.
问题原因:无法从'21.0.2'确定Java版本。
建议操作:使用--stacktrace选项获取堆栈跟踪;使用--info或--debug选项获取更多日志输出;使用--scan选项获取完整分析信息。

解决方案

Qt 5.12.12属于较旧版本,其默认集成的Android Gradle插件版本不支持Java 21(版本号解析逻辑不兼容),以下是可行的解决方法:

方法1:降级JDK到兼容版本

Qt 5.12.x官方推荐JDK 8或JDK 11,这两个版本能被旧版Gradle插件正确识别:

  1. 下载并安装OpenJDK 8/11
  2. 在Qt Creator中配置JDK路径:
    • 打开工具 > 选项 > 设备 > Android
    • 在JDK位置处选择新安装的JDK 8/11路径
  3. 重启Qt Creator后重新构建项目

方法2:调整Gradle插件与Java兼容性配置

若需保留JDK 21,可手动修改项目Gradle配置:

  1. 打开项目根目录下的项目级build.gradle文件,修改Android Gradle插件版本为支持Java 21的最低兼容版本(如7.4.2):
    buildscript {
        repositories {
            google()
            mavenCentral()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:7.4.2'
        }
    }
    
  2. 打开模块级build.gradle文件,添加Java兼容性配置:
    android {
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_17
            targetCompatibility JavaVersion.VERSION_17
        }
        kotlinOptions {
            jvmTarget = '17'
        }
    }
    
    注:Qt 5.12.x对高版本Gradle插件可能存在兼容性问题,此方法需测试验证

方法3:降级Gradle版本到适配Qt 5.12的版本

Qt 5.12.x推荐Gradle 5.6.4或6.7.1,这类版本对Java版本的识别逻辑更适配旧版JDK:

  1. 下载对应版本的Gradle
  2. 在Qt Creator中配置Gradle路径:
    • 打开工具 > 选项 > 构建和运行 > Gradle
    • 选择使用本地Gradle分发,指定下载的Gradle路径
  3. 同时确保JDK版本为8/11,避免版本不匹配

注意事项

  • Qt 5.12.12已停止官方维护,长期来看建议升级到Qt 6.x版本,以获得更好的Android和Java新版本支持
  • 修改Gradle配置后,建议删除项目的.gradle和build目录,重新构建避免缓存问题

内容的提问来源于stack exchange,提问作者Qtansroid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 09:35:13