我昨天升级了 Firebase,现在遇到了一个非常不寻常的问题。当我运行模拟器时,我得到一个 swift 编译错误“Segmentation fault: 11” 有数百行代码描述错误,但它们绝对没有帮助。从错误中,我看到的唯一可能提供线索的是在底部。它说:
1. While loading members for 'ProfileTableViewController' at <invalid loc>
2. While deserializing decl #101 (PATTERN_BINDING_DECL)
3. While deserializing decl #2 (VAR_DECL)
奇怪的是,我刚才在上面输入的错误并不一致。提到的 View Controller 在我使用 Firebase 的三个 View Controller 之间旋转。
为了尝试解决这个问题,我注释掉了 ProfileTableViewController 类中的所有代码,但在引用该 View Controller 时仍然出现错误。在 View Controller 中运行的唯一代码是:
import UIKit
import Firebase
import FirebaseDatabase
(我还在其他 View Controller 中使用 FirebaseAuth)。
解决问题的方法是点击“清理”,重启 xcode,在启动时再次清理,然后运行程序。除非我对程序中的代码进行任何更改,否则一切都会正常工作。即使我只是添加评论,错误也会再次出现。
我不想每次写几行代码都要关闭xcode重启,我担心上传到应用商店时会遇到问题。
我正在使用 XCode 7.3.1,我的部署目标是 9.3
非常感谢您提供的任何见解!谢谢!
最佳答案
我想通了!我的 Cocoa Pods 不是最新的。一旦我返回并在终端中安装了最新的 Cocoa Pods,然后更新了这个应用程序的 podfile,这个错误就消失了。
过程:
打开终端
sudo gem install cocoapods
(Cocoapods 更新)在终端导航到 app 文件夹,然后:
open -a xcode podfile
如果需要,在 podfile 中进行更改。我不需要做任何改变。保存并退出。
在终端
pod update
打开 .xcworkspace 文件然后 ta da!
关于ios - 升级后的 Firebase - 现在出现 Swift 编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37347327/