【问题标题】:Cannot find interface declaration for 'RealmSwiftObject', superclass of找不到“RealmSwiftObject”的接口声明,超类
【发布时间】:2019-04-11 14:31:08
【问题描述】:

我已经在 Mojave 10.4.3 上使用 Swift 5 几个星期了,没有任何问题。突然,我的一个项目停止编译,并出现此问题标题中的错误消息。在搜索和试验之后,我找到了解决问题的方法,并且正在回答我自己的问题。 这个问题特别令人发指(即:你可能会花很多时间走死胡同),因为它没有出现在其他成功使用使用 Carthage 0.32 编译的框架的项目中

【问题讨论】:

    标签: swift realm carthage swift5


    【解决方案1】:

    我使用 Carthage 0.32 创建 Realm 和 RealmSwift 框架。 搜索后,我找到了适合我的解决方案。 (RealmCocoa Issue 3073) 感谢 jweg29 at github 提供解决方案。

    编辑:请参阅下面来自 Larme 的评论。应该为 Swift 5 使用 Carthage 0.33 或更高版本

    我在此处发布答案,因为该错误不是由过时(仅轻微)版本的迦太基引起的。

    在终端输入:

    brew upgrade carthage
    

    cd 到包含您的 Cartfile 文件的目录,然后重建。对我来说,这意味着输入:

    carthage update --platform ios
    

    用新创建的框架替换项目中现有的 Realm 和 RealmSwift 框架,干净(我使用 Shift-Option-Command-K 确定),您应该能够重建您的项目。

    【讨论】:

    • Carthage 0.33 应该用于 Swift5(但是,可能会有一些问题)。我认为您的问题是由于对 Realm 的修复(参见github.com/realm/realm-cocoa/commit/…)更多信息:github.com/Carthage/Carthage/issues/2758
    • 感谢您提供的信息。我会相应地编辑我的答案。
    • 今天是我第一次回到自己的问题上寻求答案。我抓住了合适的替代框架,又开始了!我知道我以前见过这个问题!
    猜你喜欢
    • 2014-01-10
    • 2015-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-27
    相关资源
    最近更新 更多