找不到'Object'的接口声明,'Track'的超类;你的意思是'NSObject'吗?

时间:2015-10-13 13:04:08

标签: macos swift2 cocoapods realm

enter image description here

我正在将RealmSwift框架集成到我的OS X项目中。

import RealmSwift 
public class Track: Object {
    // class members and functions
}

我更改了Track类以扩展Object而不是NSObject,我在ProjectName-Swift.h中收到此错误

@interface Track : Object

我正在使用CocoaPods进行依赖关系管理。我在谷歌搜索这个问题,但没有得到太多。

像这样添加了RealmSwift依赖

pod 'RealmSwift'

1 个答案:

答案 0 :(得分:1)

在您创建an issue for that on the realm-cocoa repo时,此处还有以下摘要的交叉帖子:

通常,自动生成的Objective-C兼容标头在与CocoaPods集成时不应导致问题。

作为一种解决方法,您可以通过将构建设置SWIFT_INSTALL_OBJC_HEADER设置为NO来暂时停用该代。

SWIFT_INSTALL_OBJC_HEADER

请注意,我们不鼓励在混合设置中使用RealmSwift,其中Objective-C与Swift一起使用以访问模型。

如果您的模型类应该包含在桥接头中的类中,或者如果有任何其他类(传递上)依赖于它们,那么在此设置中您无法真正使用Realm Swift。

您需要按pod "Realm"替换Podfile中的条目,再次运行pod install并继承RLMObject。可能需要采取进一步的步骤,具体取决于您是否已经开始在Realm Swift API的基础上实现应用程序/模型逻辑,因为Realm Objective-C API没有带来相同的功能。