【发布时间】:2016-12-24 10:40:00
【问题描述】:
我正在尝试在 Swift iOS 项目中导入和使用 OAuthSwift 库。我听从了他们的指示:
- 将 OAuthSwift.xcodeproj 拖到项目导航器中的项目中。
- 选择您的项目,然后选择您的应用目标。打开“构建阶段”面板。
- 扩展 Target Dependencies 组,并添加 OAuthSwift 框架。 在您想使用 OAuthSwift 时导入 OAuthSwift。
完成这些步骤后,使用 import OAuthSwift 导入 OAuthSwift 会导致错误 No such module 'OAuthSwift' 并且项目无法构建。
根据其他一些关于类似问题的 SO 问题,我尝试了以下步骤:
- 清理并重建
- 将 OAuthSwift 框架添加到
Build Phases > Target Dependencies、Build Phases > Link Binary With Libraries、Build Phases > Embed Frameworks和General > Embedded Libraries的许多不同组合中 - 将
Build Settings > Search Paths > Framework Search Paths和Build Settings > Search Paths > Library Search Paths设置为$(SRCROOT)并递归。 - 验证我的部署目标是否与
OAuthSwiftXcode 项目的部署目标匹配。
我使用 git 子模块从他们的主分支使用最新版本的OAuthSwift 对此进行了测试,并手动下载和导入了两个最新标记版本(0.6.0 和 0.5.2)中的每一个。
我也新建了一个Xcode项目,如上导入OAuthSwift,遇到同样的错误。
最后,我还尝试按照自述文件https://github.com/Alamofire/Alamofire 中所述的步骤导入不同的 Swift 框架 (Alamofire)。这也导致了同样的错误:No such module 'Alamofire'。
我正在使用:
- OSX 10.11.6
- Xcode 7.3.1
- 斯威夫特 2.2
我对 Xcode 和 Swift 模块系统还很陌生,因此感谢任何帮助或建议。
【问题讨论】:
-
尝试:构建项目,关闭Xcode,重新打开Xcode,导入
-
如果你是新手,添加框架有时会有点困难,你可以使用 cocoapods 添加它,他们有它(pod 'OAuthSwift', '~> 0.5.0')跨度>
-
如果他们有 @Aziz 所说的 cocoapods,那么我强烈建议您走这条路。如果您不熟悉它,那么我建议您这样做,因为几乎所有流行的或良好/维护的 iOS 开源库都会使用它。设置后,放入/删除 3rd 方库非常容易。就像在
podfile中更改一行然后在命令行中运行pod install一样简单。强烈推荐。 -
Link for Installing // Creating podfile with your desired frameworks 然后在你的项目目录中运行 $ pod install 。清理并构建项目。可能需要重新启动 xcode,但它非常简单,可以在 cocoapods 网站上找到很多示例。
-
使用可可豆!太棒了。