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

如何解决Android Studio运行Flutter时processDebugMainManifest DEBUG报错

Flutter Android构建processDebugMainManifest报错解决方案

报错核心信息

Unable to make field private final java.lang.String java.io.File.path accessible: module java.base does not "opens java.io" to unnamed module

报错根因

该问题由JDK版本与Gradle版本不兼容导致:JDK 16及以上版本新增了强模块访问限制,低版本Gradle未适配该规则,无法访问JDK内部私有属性,最终触发构建失败。

可执行修复方案

方案1:添加JVM访问权限参数(最快生效)

找到项目下android/gradle.properties文件,找到org.gradle.jvmargs配置项,在现有值末尾追加两个参数:

org.gradle.jvmargs=-Xmx1536M --add-opens java.base/java.io=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED

如果文件中没有该配置项,直接将上面整行添加到文件末尾即可。

方案2:适配Gradle与JDK版本(长期稳定)

如果你使用的是JDK 17,请将项目Gradle相关配置升级到适配版本:

  1. 打开android/build.gradle文件,修改AGP版本到7.2及以上:
    buildscript {
        dependencies {
            classpath 'com.android.tools.build:gradle:7.4.0'
        }
    }
    
  2. 打开android/gradle/wrapper/gradle-wrapper.properties文件,修改Gradle版本到7.3及以上:
    distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
    

方案3:指定Android Studio内置JDK

如果本地安装了多版本JDK,可直接指定Android Studio自带的适配JDK:

  • 打开Android Studio设置:File > Settings > Build, Execution, Deployment > Build Tools > Gradle
  • 找到Gradle JDK选项,选择Embedded JDK或者jbr即可,不要使用本地安装的外部JDK。

验证操作

所有修改完成后,先执行flutter clean清理缓存,再重新运行项目即可正常构建。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 06:54:10