Xcode 14.0 Command PhaseScriptExecution执行失败求助
以下是你尚未尝试的几个针对性方案,按优先级测试:
检查Pod脚本的权限设置
有些第三方Pod的脚本文件可能在更新Xcode后失去可执行权限。进入项目的Pods目录,找到报错对应的脚本文件(一般在Pods/[对应Pod名]/Scripts下),执行以下命令赋予权限:chmod +x 脚本文件名.sh之后重新执行
pod install再构建。修改Build Settings中的Shell路径
Xcode 14可能对默认Shell路径有严格要求。进入项目Target的Build Settings,搜索Shell,将Run Script阶段的Shell路径从默认的/bin/sh改为/bin/bash,或者反之,再尝试构建。禁用Xcode的新构建系统(临时测试)
Xcode 14默认使用新构建系统,部分旧项目或Pod可能不兼容。打开Xcode的File > Project Settings(或Workspace Settings),将构建系统切换为Legacy Build System,清理后重新构建。检查签名脚本的硬编码路径
如果项目中有自定义的签名或打包脚本,检查其中是否有硬编码的旧Xcode路径(比如/Applications/Xcode.app/Contents/Developer),更新为当前Xcode的路径,或者改用xcode-select -p动态获取路径。重置Xcode Command Line Tools
执行以下命令重置Command Line Tools的关联:sudo xcode-select --reset之后重新打开Xcode,同意许可协议,再尝试构建。
深挖具体报错日志
点击构建日志中PhaseScriptExecution失败的条目,展开查看完整错误信息(比如是某个脚本执行时的具体命令报错),根据具体错误关键词排查——比如如果是codesign相关错误,检查证书是否在Xcode 14中正常识别,或者是否有过期的配置文件。
内容的提问来源于stack exchange,提问作者Atticus

