Search code examples
swiftxcode6.1

compile error in AppDelegate.swfit when upgraded to Xcode 6.1


After upgrading to xCode6.1, I can't compile my project which is ok last time. I have never changed anything in this file. Please help me !!!

AppDelegate.swift:75:29:

errorWithDomain(_:code:userInfo:)' is unavailable: use object construction 'NSError(domain:code:userInfo:)

lazy var persistentStoreCoordinator: NSPersistentStoreCoordinator? = {

// The persistent store coordinator for the application. This implementation creates and return a coordinator, having added the store for the application to it. This property is optional since there are legitimate error conditions that could cause the creation of the store to fail.

// Create the coordinator and store

var coordinator: NSPersistentStoreCoordinator? = NSPersistentStoreCoordinator(managedObjectModel: self.managedObjectModel)

let url = self.applicationDocumentsDirectory.URLByAppendingPathComponent("PassNote.sqlite")

var error: NSError? = nil

var failureReason = "There was an error creating or loading the application's saved data."

if coordinator!.addPersistentStoreWithType(NSSQLiteStoreType, configuration: nil, URL: url, options: nil, error: &error) == nil {

coordinator = nil

// Report any error we got.

let dict = NSMutableDictionary()

dict[NSLocalizedDescriptionKey] = "Failed to initialize the application's saved data"

dict[NSLocalizedFailureReasonErrorKey] = failureReason

dict[NSUnderlyingErrorKey] = error

error = NSError.errorWithDomain("YOUR_ERROR_DOMAIN", code: 9999, userInfo: dict)

// Replace this with code to handle the error appropriately.

// abort() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development.

NSLog("Unresolved error \(error), \(error!.userInfo)")

abort()

}

Solution

  • Try using this command in Xcode: cmd + shift + k

    Ah, i see. I am also developing in Swift and they changed some of the standart implementations.

    All you need to do is change the function into what Xcode is saying.. :) I had like 90 changes in my project.

    So you need to change it to this: NSError(domain: "YOUR_ERROR_DOMAIN", code: 9999, userInfo: dict)