我有一个带有主要 iOS 目标的项目、一些源文件在同一个项目中的自定义框架以及 CocoaPods。
我最近更改了我的 Xcode 构建配置名称并添加了两个以涵盖两个环境(暂存、生产)以及每个环境的调试和发布配置。
分期和生产的两个目标
MyProduct (Staging)
使用默认配置Debug
,Release
MyProduct (Production)
使用默认配置Debug
,Release
每次都必须在保存对话框中检查两个目标,这让我非常恼火。我决定只有一个目标,但有多个构建配置。令人惊讶的是,您几乎可以使用 Info.plist 文件中的构建配置和变量来完成所有工作。
每个环境有两个构建配置
所以我改变了这样的配置:
- 我
Debug
改为Debug Staging
- 我
Release
改为Release Staging
- 我添加了
Debug Production
- 我添加了
Release Production
我也需要更新方案设置以使用正确的配置。
由于您在项目中而不是在单个目标中更改配置,因此所有目标都将获得这些配置。
自定义框架和 CocoaPods 的问题
因为我使用的是 CocoaPods,所以我也跑来pod install
为 Pods 生成配置。它成功了,我可以使用不同的配置构建和运行我的主要目标。
现在的问题是我不能再单独构建我的自定义框架,也不能进行单元测试。我收到如下错误:
- 命令 MergeSwiftModule 失败,退出代码为非零
- 找不到框架“Pods_MyProject”
从清理派生数据到解构 CocoaPods,我已经尝试过各种方法。