You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

macOS Sonoma下Flutter环境异常:需手动source zsh文件且无法创建项目

解决macOS Sonoma下Flutter终端路径与VS Code识别问题

问题描述

  • 每次执行Flutter命令前必须手动执行source ~/.zshrc和source ~/.zsh_profile,否则运行flutter doctor会出现如下错误:
    /Users/Jim/Desktop/flutter/bin/flutter: line 40: dirname: command not found
    /Users/Jim/Desktop/flutter/bin/flutter: line 40: cd: : No such file or directory
    /Users/Jim/Desktop/flutter/bin/flutter: line 41: basename: command not found
    /Users/Jim/Desktop/flutter/bin/flutter: line 54: uname: command not found
    
  • VS Code中指定正确的Flutter SDK路径后,仍提示"Flutter SDK is not found in the specified location",无法创建项目

环境检测结果

[✓] Flutter (Channel stable, 3.16.9, on macOS 14.3.1 23D60 darwin-arm64, locale
 en-CA)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[!] Xcode - develop for iOS and macOS (Xcode 15.2)
    ✗ CocoaPods not installed.
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin
        code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To install see
      https://guides.cocoapods.org/using/getting-started.html#installation for
      instructions.
[✓] Chrome - develop for the web
[✓] Android Studio (version 2023.1)
[✓] IntelliJ IDEA Community Edition (version 2023.3.2)
[✓] VS Code (version 1.86.1)
[✓] Connected device (2 available)
[✓] Network resources

! Doctor found issues in 1 category.

当前配置文件内容

.zsh_profile

export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin 

.zshrc

export PATH=~/usr/bin:/bin:/usr/sbin:/sbin:$PATH
export PATH=$PATH:/Users/Jim/Desktop/flutter/bin
export PATH=$PATH:/Users/Jim/Development/Android/sdk/platform-tools
export PATH=$PATH:/Users/Jim/Development/Android/sdk/cmdline-tools/bin 

解决方案

1. 修复终端路径自动加载问题

问题根源是配置文件加载顺序和PATH配置冲突:zsh启动时默认优先加载~/.zprofile,你的~/.zsh_profile未被自动加载,且PATH配置覆盖了系统核心命令路径。操作步骤:

  1. 打开终端,编辑~/.zshrc:
    nano ~/.zshrc
    
  2. 将第一行PATH配置修改为:
    export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:$PATH
    
    (删除错误的~/usr/bin,保留系统默认核心路径,确保dirname、uname等命令能被找到)
  3. 保存退出(按Ctrl+O回车,再Ctrl+X)
  4. 编辑~/.zprofile(无则创建):
    nano ~/.zprofile
    
  5. 添加内容确保~/.zshrc自动加载:
    if [ -f ~/.zshrc ]; then
      source ~/.zshrc
    fi
    
  6. 保存退出后重启终端,直接运行flutter doctor测试是否无需手动source

2. 修复VS Code识别Flutter SDK问题

  • 关闭VS Code,在终端执行以下命令打开VS Code,确保环境变量被继承:
    open -a "Visual Studio Code"
    
  • 重新配置SDK路径:
    1. 打开命令面板(Cmd+Shift+P)
    2. 输入Flutter: Select SDK,选择/Users/Jim/Desktop/flutter
    3. 若仍报错,检查Flutter插件是否为最新版,同时确认SDK文件夹权限(右键文件夹→显示简介,确保当前用户有读写权限)

3. 安装CocoaPods(可选但必要)

根据flutter doctor结果,需安装CocoaPods以支持iOS/macOS开发,终端执行:

sudo gem install cocoapods

内容的提问来源于stack exchange,提问作者lightning345

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 03:43:23