Cocoapods - 没有这样的模块“模块”(对于任何模块)
Posted
技术标签:
【中文标题】Cocoapods - 没有这样的模块“模块”(对于任何模块)【英文标题】:Cocoapods - No Such Module 'module' (for any modules) 【发布时间】:2016-08-19 21:43:23 【问题描述】:经过一个多星期的调试,是时候放下我的骄傲并放弃它了。作为序言,在有人将此问题标记为重复之前,我意识到这是关于 SO 的常见问题。但是,我已经阅读了几乎所有类似的问题,并且似乎对每个给定答案都尝试了变体,但都无济于事。虽然这个问题可能看起来令人生畏,但事实并非如此。本着彻底的精神,我只是选择提供一份完整的清单,列出可能相关或不相关的事项。
这是我问题的根源:
没有这样的模块'ParseUI'
错误信息
差异在于,据我了解,框架(以及所有“没有此类模块”的框架)确实以某种能力存在,如下所示,当我构建项目并通过编译阶段时:
编译框架
就上下文而言,这绝不是文件LocalPost.swift
中的ParseUI
所特有的错误(上面的错误截图)。如果我在该文件中注释掉 import
语句,它只会在下一个找到通过 Cocoapods 安装的任何框架的 import
的地方抛出错误。它只会抛出这个错误,因为它是在我的目标构建阶段的“编译源”部分中所述文件的第一行中找到的第一个 import
语句,如下所示:
应用目标的构建阶段顺序
应用目标的编译源
话虽如此,为简单起见,我将重点关注缺少的 ParseUI
模块。
尝试和失败的解决方案尝试 - 重新排列构建阶段顺序
现在我将展示这个框架似乎存在的位置以及我采取的步骤:
首先,这些框架是通过 cocoapods 安装的。这是我的Podfile
:
Podfile
运行pod install
后,一切顺利。 ParseUI
位于我项目中的以下位置:
在项目的“Frameworks”目录中(完整路径如右图所示)
*尝试和失败的解决方案尝试 - 将位置下拉菜单更改为其他所有选项
应用目标的链接库
接下来,我将从框架搜索路径开始展示一些我认为相关的构建设置。由于我对此设置所做的任何更改似乎都没有任何区别(如下所示),因此它们目前是空白的:
项目框架搜索路径
目标框架搜索路径
Target 的其他链接器标志
*TRIED & FAILED SOLUTION ATTEMPT - 更改项目和目标构建设置的框架搜索路径,包括以下内容:
$(inherited)
(递归和非递归)
$(PROJECT_DIR)
(递归和非递归)
$(PROJECT_DIR)/Frameworks
(递归和非递归)
$(SRCROOT)
(递归和非递归)
$(SRCROOT)/Frameworks
(递归和非递归)
以上组合
现在用于Pods
项目中的配置。这是框架在Pods
目录中的位置:
Pod 的目录
框架目标的路径(完整路径如右图所示)
导航器中 pod 的“产品”目录
最后是Pod
的项目搜索路径构建设置:
项目级框架搜索路径
我要展示的所有相关 UI 到此结束。我应该注意的其他几件事:
是的,我正在使用MyProject.xcworkspace
根据我尝试这些步骤的次数,我可以清理/清除派生数据/闭上眼睛重新启动我的项目。
我什至完全移除了 Pod,并通过 cocoapods 在干净的石板上重新安装了它
我使用的版本是:
Cocoapods v1.0.1 Xcode v7.3.1 Swift v2.2 Ruby v2.3.1(如果与 Cocoapod 相关?)如果您已经走到了这一步,感谢您抽出时间跟进。如果您对我应该采取的任何步骤有建议,那就更好了。我已经黔驴技穷了。如果需要,我会用任何请求信息修改这个问题。
【问题讨论】:
【参考方案1】:确保您的 Pods 子项目将“Build Active Architecture Only”设置为 NO。
【讨论】:
以上是关于Cocoapods - 没有这样的模块“模块”(对于任何模块)的主要内容,如果未能解决你的问题,请参考以下文章
CocoaPods 在 Xcode 7 Swift 2.2 中没有这样的模块