Xcode 15搭配CocoaPods v1.13.0出现Command PhaseScriptExecution非零退出码错误
Xcode 15 + CocoaPods 1.13.0构建错误「Command PhaseScriptExecution failed」解决方法
报错核心是rsync在写入DerivedData目录时触发权限限制,或是CocoaPods旧版本与Xcode 15的构建机制不兼容,以下是针对性解决步骤:
清理构建缓存与DerivedData
- Xcode内按
Cmd+Shift+K清理当前项目构建产物 - 打开Finder,用
Cmd+Shift+G跳转至~/Library/Developer/Xcode/DerivedData,找到对应项目的文件夹(比如示例中的ContourHDK-cdjmrpbfxbvfwkcknsjwotshutcp)彻底删除 - 回到Xcode,按
Cmd+Option+Shift+K执行深度清理
- Xcode内按
升级CocoaPods至兼容版本
CocoaPods v1.13.0对Xcode 15的适配存在缺陷,升级到v1.14.0及以上版本即可解决大部分权限相关问题:- 终端执行
sudo gem install cocoapods安装最新稳定版 - 进入项目根目录,执行
pod deintegrate移除现有Pod集成 - 执行
pod install重新安装所有依赖
- 终端执行
修改Copy Pods Resources脚本参数
如果暂时无法升级CocoaPods,可直接修改rsync命令规避权限问题:- 在Xcode中选中主Target,切换到「Build Phases」标签页
- 找到「[CP] Copy Pods Resources」阶段,双击打开脚本内容
- 找到包含
rsync的命令行,在末尾添加--no-mkstemp参数 - 保存脚本后重新构建项目
检查系统磁盘权限
确保Xcode拥有足够的磁盘访问权限:- 打开系统设置 → 隐私与安全性 → 完全磁盘访问权限
- 确认Xcode和终端(如果用终端执行过Pod命令)已在列表中并开启权限
- 重启Xcode后再次尝试构建
内容的提问来源于stack exchange,提问作者Jay Gajjar
相关产品推荐
相关产品推荐

