Flutter构建报错:找不到'-'命令,Gradle assembleDebug失败退出码64怎么办?
Flutter Debug版本构建失败排查
执行Flutter应用debug版本构建时,会触发如下链路报错:
控制台输出报错详情:
- 前置提示:找不到名为
-的命令- 同步输出Dart命令行帮助说明:
用法:dart [] <command|dart-file> [] 全局选项: -h, --help 打印本用法信息 -v, --verbose 显示额外命令输出 --version 打印Dart SDK版本 --enable-analytics 启用匿名使用统计 --disable-analytics 禁用匿名使用统计 可用命令: analyze 分析项目的Dart代码 compile 将Dart代码编译为多种目标格式 create 创建新项目 format 规范格式化Dart源代码 pub 执行包管理相关操作 run 运行Dart程序 test 运行当前包中的测试 运行“dart help <command>”可查看某条命令的更多信息
- 最终失败提示:
Gradle assembleDebug任务执行失败,退出码64,进程已终止(SIGTERM)
报错根因
构建链路中拼接Dart调用命令时出现参数语法错误:本该依附于具体命令的短横线参数,被错误传递到Dart可执行文件的子命令解析位置,让Dart解析器把单独的-识别为不存在的子命令,触发帮助文档输出,进而中断后续Gradle构建流程。
排查解决步骤
- 检查
android/gradle.properties配置文件
排查是否存在格式错位的配置项:比如多余的单独-行、无值的空参数配置、换行错误把单条配置拆成独立字符的情况,删除无效字符后重新同步Gradle配置。 - 检查
android/app/build.gradle的构建脚本
定位Flutter插件的配置逻辑,排查手动拼接Dart/Flutter调用命令时的参数漏写问题,避免出现单独传入-作为独立入参的错误。 - 清理本地构建缓存后重跑
依次执行以下清理命令,清除残留的错误构建产物:
清理完成后重新触发debug构建。flutter clean flutter pub get cd android && ./gradlew clean - 排查SDK版本兼容问题
旧版本Flutter在处理含中文/特殊字符的项目路径时,会出现参数转义错误,导致解析时拆分出独立的-参数,可升级到当前稳定版SDK后重试。
内容的提问来源于stack exchange,提问作者Gaurav Dahal
相关产品推荐
相关产品推荐

