Xcode/Swift error: Command failed due to signal: Segmentation fault: 11

送分小仙女□ 提交于 2019-12-11 11:18:09

问题


I am trying to call a function of a singleton class with completion handler argument but I get "Command failed due to signal: Segmentation fault: 11" error. I am using Xcode 6.2 (6C101) and trying to build for iOS 8 on iPhone 6 simulator. Here is the singlton class:

public class ClientManager {

    public class var sharedInstance: ClientManager {
        struct Singleton {
            static let instance = ClientManager()
        }
        return Singleton.instance
    }

    private init() {
    }

    public func fetchServiceInfo(serviceName: String, completionHandler: (JSON?, NSError?) -> Void) {
        Alamofire.request(.GET, Router.ServiceInfo(serviceName)).responseJSON { (req, res, json, error) in
            completionHandler(JSON(json!), error)
        }
    }

}

And when I call fetchServiceInfo function within a view controller, Xcode crashes (SourceKitService Crashed):

ClientManager.sharedInstance.fetchServiceInfo("default") { (json, error) in
    println(json)
}

However, if I call the same function within the init method of ClientManager it works properly:

private init() {
    self.fetchServiceInfo("default") { (json, error) in
        println(json)
    }
}

I am using Alamofire and SwiftyJSON libraries.


回答1:


¿Is posible you are using SwiftyJSON as framework, cocoapods or git submodule? Look at https://github.com/SwiftyJSON/SwiftyJSON/issues/125 Using SwiftyJSON.swift file into your project must work fine




回答2:


As Carlos Garcia correctly pointed out, the problem is with compiling SwiftyJSON. In his provided link https://github.com/SwiftyJSON/SwiftyJSON/issues/125, check the solution by nunogoncalves. In a nutshell, you MUST use the closure JSON parameter at least once in the closure body. Here is what I did:

NetworkManager.sharedInstance.loadOrderDetails(187, onComplete: { (json, errorMessage) -> () in
    json?["aaa"] //this useless line fixes the compiler crash

    //the rest of your code here...
});


来源:https://stackoverflow.com/questions/27604758/xcode-swift-error-command-failed-due-to-signal-segmentation-fault-11

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!