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:- 打开Android Studio,依次进入
File→Settings→Build, Execution, Deployment→Build Tools→Gradle - 在
Gradle JDK选项中选择已安装的Java 11版本,点击Apply保存
- 打开Android Studio,依次进入
方案4:清理缓存后重新构建
执行以下命令清理项目缓存,再重新触发构建:flutter clean flutter pub get cd android ./gradlew clean assembleProfile cd .. flutter run --profile
内容的提问来源于stack exchange,提问作者lusaty
相关产品推荐
相关产品推荐

