Macbook Air M1安装Flutter 3.3.5后遇文件/目录访问权限问题求助
Flutter 3.3.5 arm64在M1 Mac上的权限错误解决
问题描述
在Macbook Air M1上安装Flutter 3.3.5 [stable] arm64版本后,运行flutter doctor时出现以下错误:
The flutter tool cannot access the file or directory.
Please ensure that the SDK and/or project is installed in a location that has
read/write permissions for the current user.
解决步骤
1. 调整SDK安装位置
如果Flutter SDK装在/Applications、/Library这类系统级目录,M1 Mac的系统权限会限制普通用户读写。建议将SDK移到个人用户目录下,比如~/Developer/flutter或~/Documents/flutter,这类目录默认对当前用户开放完全读写权限。
2. 修改现有SDK目录权限
不想移动目录的话,直接给当前用户赋予SDK目录的所有权和读写权限:
打开终端,替换/path/to/flutter为你的实际安装路径,执行以下命令:
sudo chown -R $(whoami):staff /path/to/flutter sudo chmod -R 755 /path/to/flutter
第一条命令将目录所有权改为当前用户,第二条设置目录的读写执行权限。
3. 验证修复效果
重新运行flutter doctor,若权限问题解决,命令会正常执行并开始检查依赖环境。
4. 特殊情况:系统完整性保护(SIP)限制
如果以上方法无效,可能是Mac的SIP限制了目录访问:
- 确认Flutter没有安装在
/System目录下(该目录完全受SIP保护,无法修改权限) - 必要时可临时关闭SIP(不推荐常规使用):
- 重启Mac,按住Command+R进入恢复模式
- 打开终端执行
csrutil disable - 重启后修改权限,完成后再执行
csrutil enable重新开启SIP
内容的提问来源于stack exchange,提问作者Suyash Khandare
相关产品推荐
相关产品推荐

