我有一个用cocoapods构建的xcworkspace(pod install)。我能解决xCode如何知道在构建MyProject时它还必须构建Pods项目的事情吗?
假设:
在MyProject构建阶段的主要目标" Link Binary with Libraries"我可以看到" Pods_MyProject.framework"它指的是Pods(项目)Pods-MyProject目标构建的.framework(它是否正确?)。这个目标有他的目标依赖关系"所有的豆荚。
但我仍然不理解两件事
以下是" MyProject"的构建阶段标签。 (它的真名是" clicktube"):
答案 0 :(得分:1)
这是有趣的事情:
Xcode检查构建目录中的文件以发现隐式 依赖。例如,如果一个项目包含在工作区中 构建一个由同一个项目链接的库 工作区,Xcode在构建之前自动构建库 其他项目,即使构建配置没有这个 依赖显式。您可以使用覆盖此类隐式依赖项 必要时显式构建设置。对于显式依赖,您 必须创建项目参考。
有两种类型的依赖:显式和隐式。您可以在" Target dependencies"中指定显式的。 XCode通过查看"链接二进制文件库和#34;来发现隐式依赖项。然后它决定项目的建立顺序。
" Pods_MyProject.framework"包含所有的pod "将Binary与Libraries联系起来"部分几乎是空的?
如果您查看Pods.xcodeproj,那么您安装的每个框架都有一个目标'通过podfile。然后是Pods_MyProject.framework目标,它明确依赖于所有这些框架。