误删Xcode DerivedData文件夹致编译写入错误求助
解决误删DerivedData文件夹后的Xcode构建权限问题
1. 修复DerivedData文件夹权限
误删整个文件夹后,Xcode自动重建的目录可能存在权限异常,先手动处理:
- 创建DerivedData目录:
mkdir -p ~/Library/Developer/Xcode/DerivedData - 修复目录所属权限:
sudo chown -R $(whoami):staff ~/Library/Developer/Xcode/DerivedData - 确保上级Xcode目录权限正常:
sudo chown -R $(whoami):staff ~/Library/Developer/Xcode
2. 清理Flutter项目及全局缓存
Flutter的构建缓存可能与Xcode权限冲突,彻底清理:
- 进入Flutter项目根目录,执行:
flutter clean flutter pub cache clean flutter pub get
3. 重置Xcode状态与缓存
Xcode的缓存和偏好设置可能残留异常状态:
- 完全关闭Xcode,执行以下命令清理缓存:
rm -rf ~/Library/Caches/com.apple.dt.Xcode rm -rf ~/Library/Preferences/com.apple.dt.Xcode.plist - 若使用iOS模拟器,重置模拟器状态:
xcrun simctl erase all - 重启Mac(权限变更通常需要重启才能完全生效)
4. 重新配置iOS项目Pods
之前的Pod操作可能未彻底生效,重新初始化:
- 进入项目的ios目录:
cd ios - 删除旧的Pod配置文件:
rm -rf Podfile.lock Pods - 重新整合Pods:
pod deintegrate && pod setup && pod install - 打开Xcode,执行清理项目(Cmd+Shift+K),再尝试重新构建(Cmd+B)
5. 检查系统隐私权限
沙箱错误通常和系统权限相关:
- 打开「系统设置」→「隐私与安全性」→「完全磁盘访问权限」
- 确保Xcode、你使用的终端(如Terminal/iTerm)、dart都已被勾选,获得完全磁盘访问权限
额外排查步骤
如果以上操作仍未解决:
- 更新CocoaPods到最新版本(你的当前版本1.12.0较旧,可能与Xcode 15.2存在兼容问题):
sudo gem install cocoapods - 创建一个全新的Flutter测试项目,尝试在Xcode中构建,若能正常构建则说明原项目存在特殊配置问题,可逐步对比排查
内容的提问来源于stack exchange,提问作者Nurol Alacaatli
相关产品推荐
相关产品推荐

