Flutter开发中PowerShell执行./gradlew报无法识别错误咨询
报错根因
gradlew 是Android构建的Gradle Wrapper脚本,只存在于Flutter项目的android子目录下,你当前在Flutter项目根目录直接调用,系统找不到对应文件,自然触发命令不存在的报错。
修复步骤
- 先切换到项目下的android目录,在当前PowerShell窗口执行:
cd android - Windows默认限制本地脚本执行,先给当前终端开临时权限(仅当前窗口生效,不修改系统全局配置,无安全风险),执行:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
弹出确认提示时输入Y回车即可。 - 执行清理命令,注意PowerShell下调用当前目录脚本优先用
.\前缀(虽然部分新版PowerShell兼容Linux写法的./,但原生写法路径识别更稳定):.\gradlew clean
异常兜底
如果切到android目录后还是提示找不到gradlew,说明项目缺失Gradle Wrapper相关文件,回到Flutter项目根目录执行下面的命令补全平台构建文件即可,执行过程不会覆盖你已经写好的业务代码:flutter create .

完整报错日志:
./gradlew: 无法将术语'./gradlew'识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称拼写,如果包含路径,请验证路径是否正确并重试。 所在位置 行:1 字符:1 + ./gradlew clean./gradlew clean./gradlew clean./gradlew clean + ~~~~~~~~~ + CategoryInfo : ObjectNotFound: (./gradlew:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException PS C:\Users\walee\Desktop\Coding\Flutter\Flutter Projects\learningdart> ./gradlew clean ./gradlew: 无法将术语'./gradlew'识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称拼写,如果包含路径,请验证路径是否正确并重试。 所在位置 行:1 字符:1 + ./gradlew clean + ~~~~~~~~~ + CategoryInfo : ObjectNotFound: (./gradlew:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException
内容的提问来源于stack exchange,提问作者Waleedh Nihal Ahmed
相关产品推荐
相关产品推荐

