升级Android Studio后macOS系统下Flutter项目构建失败如何解决
问题根因
- 当前项目使用的Gradle 6.7版本与Android Studio Arctic Fox内置的OpenJDK 11不兼容:JDK 11引入的模块化机制限制了对
java.io.File私有字段的反射访问,旧版本Gradle未适配该限制,因此触发构建错误。
解决方案
方案1:升级项目Gradle版本(优先推荐)
- 打开项目路径下
android/gradle/wrapper/gradle-wrapper.properties文件,将distributionUrl对应的Gradle版本修改为7.0及以上版本,示例配置:
distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-all.zip
- 打开项目路径下
android/build.gradle文件,将Android Gradle插件版本修改为和Gradle版本匹配的7.0.0及以上版本,示例配置:
dependencies { classpath 'com.android.tools.build:gradle:7.0.4' }
- 保存所有修改后重新执行构建即可。
方案2:临时添加JVM适配参数(仅做临时验证使用,不建议长期用)
- 打开项目路径下
android/gradle.properties文件,添加如下JVM启动参数:
org.gradle.jvmargs=--add-opens java.base/java.io=ALL-UNNAMED
- 该参数会强制开放JDK的
java.io模块访问权限,可临时绕过报错,但后续还是建议升级Gradle版本从根本解决兼容问题。
方案3:调整Android Studio使用的JDK版本
- 如果你不想修改项目原有Gradle配置,可以打开Android Studio的
设置 > 构建、执行、部署 > 构建工具 > Gradle,将Gradle JDK选项修改为JDK 1.8版本,即可兼容旧版本Gradle。
内容的提问来源于stack exchange,提问作者rami1988
相关产品推荐
相关产品推荐

