Flutter运行报错:':gradle:compileGroovy'任务执行失败求助
运行任意Flutter应用均报Gradle Worker Daemon错误
运行任何Flutter应用(新项目或已有项目)时,都会触发以下错误:
Error: Could not find or load main class worker.org.gradle.process.internal.worker.GradleWorkerMain Caused by: java.lang.ClassNotFoundException: worker.org.gradle.process.internal.worker.GradleWorkerMain Could not write standard input to Gradle Worker Daemon 3. java.io.IOException: The pipe is being closed at java.base/java.io.FileOutputStream.writeBytes(Native Method) at java.base/java.io.FileOutputStream.write(FileOutputStream.java:349) at java.base/java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:81) at java.base/java.io.BufferedOutputStream.flush(BufferedOutputStream.java:142) at org.gradle.process.internal.streams.ExecOutputHandleRunner.forwardContent(ExecOutputHandleRunner.java:68) at org.gradle.process.internal.streams.ExecOutputHandleRunner.run(ExecOutputHandleRunner.java:53) at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:49) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:840) FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':gradle:compileGroovy'. > Failed to run Gradle Worker Daemon > Process 'Gradle Worker Daemon 3' finished with non-zero exit value 1 * 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 1s Error: Gradle task assembleDebug failed with exit code 1
已尝试的无效操作
- 卸载Flutter SDK及相关插件
- 将Flutter SDK重新安装至C盘根目录
- 重新安装Android Studio
- 执行
flutter doctor检测,结果显示无异常
解决方案尝试
1. 清理Gradle缓存
- 删除Windows系统下Gradle缓存目录:
C:\Users\[你的用户名]\.gradle\caches - 在项目根目录执行命令:
flutter clean - 进入项目的
android文件夹,执行命令:gradlew clean
2. 匹配Java与Gradle版本兼容性
- 查看项目
android/gradle/wrapper/gradle-wrapper.properties中的Gradle版本,例如distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip - 确保使用的Java版本与Gradle版本匹配:Gradle 7.x推荐Java 11或17,避免使用Java 21等过高版本
- 在Android Studio中设置兼容的JDK:
File > Project Structure > SDK Location > JDK Location
3. 禁用Gradle Worker Daemon
在项目的android/gradle.properties中添加以下配置:
org.gradle.daemon=false
添加后重新运行项目。
4. 替换Gradle版本
若当前Gradle版本存在兼容性问题,尝试调整版本:
- 修改
android/gradle/wrapper/gradle-wrapper.properties中的distributionUrl,例如替换为gradle-7.4.2-all.zip - 同步项目后重新运行
5. 检查系统环境变量
- 确认
JAVA_HOME指向正确的JDK根目录(如C:\Program Files\Java\jdk-11.0.18),路径中避免空格或特殊字符 - 确保系统
Path变量包含%JAVA_HOME%\bin
内容的提问来源于stack exchange,提问作者Mu'aaz Bassa
相关产品推荐
相关产品推荐

