Xcode 14中部分CocoaPods需签名的原因及解决方法咨询
Xcode 14 下 CocoaPods 项目签名错误及重复库问题处理
问题根源
- Xcode 14 对代码签名机制做了细节调整,老版本 CocoaPods 生成的项目配置无法兼容这种变化,尤其是针对同时包含静态库和 Framework 类型的 Pod
- 涉事 Pod 的 spec 文件中同时定义了静态库和 Framework 两种构建产出,在 Xcode 14 环境下被重复引入,触发了强制签名校验
解决步骤
1. 升级 CocoaPods 到最新版
终端执行以下命令:
sudo gem install cocoapods pod repo update pod install --repo-update
新版 CocoaPods 已针对 Xcode 14 做了适配,能自动处理重复库的构建配置冲突。
2. 手动统一 Pod 签名配置
- 打开项目中的
Pods.xcodeproj - 找到报错的两个 Pod 对应的构建目标(一个静态库、一个 Framework)
- 逐个进入
Signing & Capabilities面板,将Signing Certificate设置为Automatic,同时确保两个目标的Team选择一致(选你的开发团队)
3. 强制指定 Pod 的构建类型
如果确认涉事 Pod 同时支持两种构建类型,可在 Podfile 中强制指定只使用其中一种:
比如强制使用静态库:
pod '目标Pod名称', :static_framework => true
或者强制使用 Framework:
pod '目标Pod名称', :modular_headers => true
修改后执行 pod install 重新生成项目配置。
4. 彻底清理项目缓存
- 终端执行
pod deintegrate移除旧的 Pod 集成配置 - 删除项目根目录下的
Pods文件夹、Podfile.lock文件,以及 Xcode 项目的xcuserdata文件夹 - 重新执行
pod install - 最后通过 Xcode 菜单
Product > Clean Build Folder清理构建缓存
内容的提问来源于stack exchange,提问作者Mathias
相关产品推荐
相关产品推荐

