Swift 和 Cocoapods - 缺少必需的模块
Posted
技术标签:
【中文标题】Swift 和 Cocoapods - 缺少必需的模块【英文标题】:Swift and Cocoapods - Missing required module 【发布时间】:2015-04-23 16:43:01 【问题描述】:我正在尝试制作一个 Swift 框架。这个框架依赖于两个库,Alamofire 和 SwiftyJSON,它们都是用 Swift 编写的。
我正在使用 CocoaPods 在我的框架中导入这些库。这是我的 Podfile 的内容:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
pod 'Alamofire', '1.2'
pod 'SwiftyJSON', '2.2'
在我的框架中,我有一个类可以导入并使用这两个模块:
import Alamofire
import SwiftyJSON
我可以运行pod install
并成功构建我的框架!
现在,当我尝试在 Swift 项目中使用我的框架时,事情变得很棘手。
-
我将
.framework
文件复制到我的项目中。
在我的项目目标的构建阶段,我添加了一个“目标”设置为“框架”的复制文件阶段,并添加了我的框架文件。
我在项目的 Swift 类中导入我的框架:
import MyFramework
问题是:Xcode 一直在告诉我
缺少必需的模块“SwiftyJSON”
更令人惊讶的是:如果我不使用 SwiftyJSON 并将其从我的框架中删除(但仍然使用 Alamofire)... 它可以工作! 而且我对任何其他库都有同样的问题SwiftyJSON。只有 Alamofire 似乎有效。
我已经看到了一些问题,例如this one,并尝试了一些方法(更改构建设置、将库添加到链接库、添加桥接头,尽管我不处理 ObjC)但没有任何效果。 ..
有人对如何解决这个问题有任何想法吗?快把我逼疯了!
编辑:我正在使用 Cocoapods v0.37.0.beta.1。与 v0.36.4 相同的问题。
【问题讨论】:
【参考方案1】:将 Xcode 更新到 6.3.1 版本后问题解决。
【讨论】:
以上是关于Swift 和 Cocoapods - 缺少必需的模块的主要内容,如果未能解决你的问题,请参考以下文章
在 Swift Playground 中导入使用 Firebase 的框架(“缺少必需的模块 'Firebase'”)
Xcode - @IBDesignables - X.framework 缺少必需的代码签名