MacOS升级Catalina配置路径后zsh找不到flutter命令如何解决
macOS Catalina zsh环境下
flutter: command not found修复方案 Catalina版本开始macOS默认终端Shell从bash切换为zsh,配置文件加载逻辑变更、系统升级后路径失效、权限重置都会触发该报错,按以下步骤操作即可修复:
- 定位Flutter SDK的准确存放路径
先执行命令搜索本地SDK位置,避免路径拼写错误:
记录输出的Flutter根目录绝对路径,比如返回结果为find ~ -name flutter -type d -maxdepth 5 2>/dev/null/Users/你的用户名/development/flutter,对应的可执行文件目录就是该路径下的bin文件夹。 - 将Flutter路径写入zsh专属配置文件
zsh不会默认加载bash环境使用的.bash_profile、.bashrc配置,必须把路径写入用户目录下的.zshrc文件才能生效。执行以下命令追加配置,替换[你的Flutter根目录绝对路径]为上一步查到的实际路径:
示例:如果Flutter存放在echo 'export PATH="$PATH:[你的Flutter根目录绝对路径]/bin"' >> ~/.zshrc/Users/li/development/flutter,对应命令为:echo 'export PATH="$PATH:/Users/li/development/flutter/bin"' >> ~/.zshrc - 修复系统升级后的权限异常
Catalina升级过程中可能重置第三方目录的执行权限,执行以下命令补全权限,路径替换为你的Flutter实际根目录:chmod -R 755 [你的Flutter根目录绝对路径] - 加载配置并验证
执行命令让配置立刻生效:
执行验证命令检查是否修复成功:source ~/.zshrc
正常输出Flutter版本、Dart版本信息即修复完成。flutter --version
常见问题排查
- 配置路径时不要用相对路径,不要只写
~/development/flutter/bin这类缩写,优先写全/Users/开头的完整绝对路径,避免zsh路径解析失败 - 如果安装了oh-my-zsh,把Flutter的PATH配置放在
.zshrc文件末尾,避免其他自定义配置覆盖PATH变量 - 若操作后仍报错,先执行
echo $PATH查看当前生效的路径列表,确认列表中包含Flutter的bin目录,不存在则说明配置写入位置错误或路径拼写有误
内容的提问来源于stack exchange,提问作者Abdul Momen
相关产品推荐
相关产品推荐

