桥接头不导入 Cocoapod 库,“没有这样的模块‘MagicalRecord’”
Posted
技术标签:
【中文标题】桥接头不导入 Cocoapod 库,“没有这样的模块‘MagicalRecord’”【英文标题】:Bridging header not importing Cocoapod libraries, "No such module 'MagicalRecord'" 【发布时间】:2015-06-07 18:43:51 【问题描述】:我正在尝试将 MagicalRecord 导入(直到现在)纯 swift 项目。我已经设置了 Cocoapods,安装了 MagicalRecord,并且我使用的是 .xcworkspace
而不是 .xcodeproj
。
我使用的是 Xcode 在创建 Objective C 类时自动创建的桥接头(尽管我也尝试过使用手动创建的桥接头),并且我确保了Build Settings>Swift Compiler - Code Generation>Objective-C Bridging Header 下的.xcodeproj
已正确设置。
在桥接头中,我有以下内容
#import <MagicalRecord/MagicalRecord.h>
然后当我尝试在 swift 文件中使用 import MagicalRecord
时,我收到一条错误消息,指出 No such module 'MagicalRecord'
。我在桥接头中尝试了不同的 #import
语句,比如像旧教程建议的那样导入 CoreData+MagicalRecord.h
,但它仍然不起作用。
我的桥接头似乎并没有完全损坏,因为当我尝试导入在我自己的项目中创建的文件时,它可以工作,并且我可以创建在导入文件中定义的对象。但是,如果我尝试在该文件中导入 MagicalRecord,我仍然会收到上述导入错误。
是否需要进行一些额外的设置才能使其正常工作?
【问题讨论】:
好吧,在发布这篇文章几分钟后,我尝试了我应该首先尝试的方法,它只是使用 MagicalRecord 中的方法而没有导入语句。事实证明它完全有效!在 Swift 中不需要 import 语句。在这里找到了解决这个问题的线索:developer.apple.com/library/prerelease/ios/documentation/Swift/…。 “将 Swift 导入 Objective-C”部分中的表格很有帮助 如果没有 import 语句,我的将无法工作...Xcode 7 beta...呃 我处于可以从托管对象访问 MR_create() 等的状态,但我无法调用 MagicalRecord.setupCoreDataStack()。 啊,必须在 AppDelegate 中import MagicalRecord
。
【参考方案1】:
确保您的桥接头已就位并且use_framework!
存在于您的Podfile
中。
【讨论】:
以上是关于桥接头不导入 Cocoapod 库,“没有这样的模块‘MagicalRecord’”的主要内容,如果未能解决你的问题,请参考以下文章