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

Flutter项目Gradle构建报错:Execution failed for task :app:processProfileMainManifest

Flutter项目Gradle构建异常修复指南

问题详情

运行Flutter项目时触发Gradle构建异常,核心报错:

Execution failed for task ':app:processProfileMainManifest'
错误原因: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 @2f4c843a

当前环境配置:

  • Flutter 2.10.2
  • Java 11
  • Android Studio 2022.2.1.20(Windows版)
  • Gradle 7.5.1(已尝试同步项目Gradle版本,问题未解决)

完整报错日志

Flutter assets will be downloaded from https://storage.flutter-io.cn. Make sure you trust this source! Launching lib\main.dart on sdk gphone64 x86 64 in profile mode... Running Gradle task 'assembleProfile'...

FAILURE: Build failed with an exception.

What went wrong: Execution failed for task ':app:processProfileMainManifest'. 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 @2f4c843a

Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

BUILD FAILED in 2s Exception: Gradle task assembleProfile failed with exit code 1
#0      throwToolExit (package:flutter_tools/src/base/common.dart:10:3)
#1      AndroidGradleBuilder.buildGradleApp (package:flutter_tools/src/android/gradle.dart:401:9) <asynchronous suspension>
#2      AndroidGradleBuilder.buildApk (package:flutter_tools/src/android/gradle.dart:184:5) <asynchronous suspension>
#3      AndroidDevice.startApp (package:flutter_tools/src/android/android_device.dart:574:7) <asynchronous suspension>
#4      FlutterDevice.runCold (package:flutter_tools/src/resident_runner.dart:523:33) <asynchronous suspension>
#5      ColdRunner.run (package:flutter_tools/src/run_cold.dart:57:28) <asynchronous suspension>
#6      AppDomain.launch.<anonymous closure> (package:flutter_tools/src/commands/daemon.dart:645:9) <asynchronous suspension>
#7      AppDomain.launch (package:flutter_tools/src/commands/daemon.dart:643:5) <asynchronous suspension>
#8      RunCommand.runCommand (package:flutter_tools/src/commands/run.dart:621:15) <asynchronous suspension>
#9      FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1287:27) <asynchronous suspension>
#10     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19) <asynchronous suspension>
#11     CommandRunner.runCommand (package:args/command_runner.dart:212:13) <asynchronous suspension>
#12     FlutterCommandRunner.runCommand.<anonymous closure> (package:flutter_tools/src/runner/flutter_command_runner.dart:288:9) <asynchronous suspension>
#13     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19) <asynchronous suspension>
#14     FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:236:5) <asynchronous suspension>
#15     run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:64:9) <asynchronous suspension>
#16     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19) <asynchronous suspension>
#17     main (package:flutter_tools/executable.dart:91:3) <asynchronous suspen

修复方案

  • 方案1:添加JVM权限参数
    在项目根目录的gradle.properties文件中追加以下配置,让Java模块允许未命名模块访问指定包:

    org.gradle.jvmargs=--add-opens java.base/java.io=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED
    
  • 方案2:适配Android Gradle Plugin版本
    Flutter 2.10.2需搭配兼容Gradle 7.5.1的Android Gradle Plugin(AGP),修改项目android/build.gradle文件中的AGP版本:

    buildscript {
        dependencies {
            classpath 'com.android.tools.build:gradle:7.4.2' // 与Gradle 7.5.1适配的稳定版本
        }
    }
    
  • 方案3:验证Java环境配置
    确保Android Studio使用指定的Java 11:

    1. 打开Android Studio,依次进入File→Settings→Build, Execution, Deployment→Build Tools→Gradle
    2. 在Gradle JDK选项中选择已安装的Java 11版本,点击Apply保存
  • 方案4:清理缓存后重新构建
    执行以下命令清理项目缓存,再重新触发构建:

    flutter clean
    flutter pub get
    cd android
    ./gradlew clean assembleProfile
    cd ..
    flutter run --profile
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 19:05:18