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

VS Code中Flutter项目Android端Gradle构建报错(Java版本提示不符)求助

VS Code中Flutter项目Android端Gradle构建报错(Java版本提示不符)求助

嗨,我太懂这种明明项目能正常运行,但看着VS Code里的报错提示浑身难受的感觉了!先把你遇到的报错信息贴出来,方便大家一起排查:

Could not run phased build action using connection to Gradle distribution 'https://services.gradle.org/distributions/gradle-7.5-all.zip'.
org.gradle.api.ProjectConfigurationException: A problem occurred configuring root project 'android'.
A problem occurred configuring root project 'android'.
A problem occurred evaluating root project 'android'.
A problem occurred configuring project ':app'.
Build file
Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.

你说已经装了Flutter推荐的最新Java版本,但Gradle还是识别成Java 1.8,大概率是VS Code、Gradle配置或者系统环境变量没正确关联到你的高版本Java,咱们一步步来修复:

  • 第一步:确认VS Code使用的Java Runtime
    打开VS Code,按下Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(Mac),输入「Java: Configure Java Runtime」。在弹出的页面切换到「Projects」标签,找到你的Flutter Android项目,看看它对应的Java Runtime是不是11及以上版本。
    如果不是,点击「Edit in settings.json」,在配置文件里指定你的高版本Java路径,比如:

    "java.home": "/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home" // Mac示例
    // 或者Windows示例:"java.home": "C:\\Program Files\\Java\\jdk-17"
    
  • 第二步:配置项目根目录的Gradle Java版本
    打开项目里的android/build.gradle(注意是android根目录下的,不是app子目录的),找到ext代码块,添加或修改Java版本配置:

    ext {
        compileSdkVersion = 33
        minSdkVersion = 21
        targetSdkVersion = 33
        kotlin_version = '1.7.10'
        javaVersion = JavaVersion.VERSION_11 // 或者VERSION_17,只要是11+就行
    }
    

    同时确保Gradle插件版本和Java版本适配,比如在dependencies里用7.4.2及以上的插件:

    dependencies {
        classpath "com.android.tools.build:gradle:7.4.2"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
    
  • 第三步:配置app模块的编译选项
    打开android/app/build.gradle,在android代码块里添加编译参数,强制指定Java版本:

    android {
        // 其他已有配置...
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_11
            targetCompatibility JavaVersion.VERSION_11
        }
        kotlinOptions {
            jvmTarget = '11' // Kotlin代码也指定对应JVM版本
        }
    }
    
  • 第四步:清理缓存并刷新Gradle
    先在终端执行以下命令,彻底清理项目缓存:

    flutter clean
    flutter pub get
    cd android
    ./gradlew clean
    ./gradlew build --refresh-dependencies
    

    然后重启VS Code,打开Gradle面板(左侧边栏)点击「Refresh Gradle Project」,等同步完成后看看报错是否消失。

  • 第五步:检查系统环境变量
    确认你的JAVA_HOME环境变量指向的是11+版本的Java:

    • Windows:打开命令提示符,输入echo %JAVA_HOME%查看路径
    • Mac/Linux:打开终端,输入echo $JAVA_HOME查看路径
      如果路径不对,修改环境变量后重启VS Code,让配置生效。

补充说明:虽然现在项目能跑,但这个报错是Gradle在配置阶段的检测提醒,后续如果要打包、构建复杂任务,可能会因为版本不兼容出问题,所以还是尽早修复比较稳妥~

备注:内容来源于stack exchange,提问作者Handika Djati

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.17 07:43:12