【问题标题】:Swift error while starting app, after update to Xcode 10.2 beta 3更新到 Xcode 10.2 beta 3 后启动应用程序时出现 Swift 错误
【发布时间】:2019-02-24 15:04:52
【问题描述】:

将 Xcode 更新到 10.2 beta 3 后,我在启动应用程序时收到此错误,这将导致崩溃(应用程序编译成功):

objc[2140]: Swift 类扩展和 Swift 类上的类别不允许有 +load 方法 (lldb)

你知道这可能是什么原因吗?

【问题讨论】:

  • 看来你不是唯一一个看到问题的人。 github.com/pmusolino/Wormholy/issues/51
  • 1.快速搜索任何函数名称load(或名称中包含load),看看重命名是否能解决问题。 2. 列出您的 PodFile/CartFile 并隔离导致问题的框架。 3. 如果一切都失败了,创建一个minimal reproducible example 并发布到 GitHub 或 BitBucket 上。
  • 新 Xcode 版本的结果相同。您是否找到了一种方法来检测哪些类或扩展违反了这个新约定?得到相同的结果,但没有任何提示。
  • @ThomasG。这段时间你有什么发现吗?

标签: ios swift xcode xcode10.2


【解决方案1】:

就我而言,这是因为我在我的 ReactNative 项目中添加了一个使用 Swift 的模块。在这个issue 中,他们讨论了这个错误并且有几个解决方案。

官方的解决方案是将RN升级到0.59.3+,但是可能对我影响太大,我暂时不会这样做,所以我根据this commit编辑了RCTBridgeModule.h作为解决方法,它有效。

【讨论】:

  • 哇,确实做到了。谢谢!
【解决方案2】:

你的一些依赖可以有 +load 方法。就我而言,有 Firebase 和 Swinject cocoapods。

【讨论】:

    猜你喜欢
    • 2019-08-25
    • 1970-01-01
    • 2016-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-17
    相关资源
    最近更新 更多