我正在为现有项目从Swift 3到Swift 4.2进行Swift迁移。我已经执行了Xcode 10.1 Assistant,并且我的项目在调试中可以正确编译,但是当我尝试对其进行存档时,会出现标题中的错误。
我的项目包括
在“实用工具”窗格中,有一个NSError子类(CMError)
public class CMError: NSError {
// MARK: - Initializers
public convenience init(type: CMErrorType) {
self.init(domain: CMErrorDomain,
code: type.rawValue,
userInfo: type.localizedUserInfo())
}
public convenience init(type: CMErrorType, code: String) {
self.init(domain: CMErrorDomain,
code: type.rawValue,
userInfo: type.localizedUserInfo(code: code))
}
public convenience init(type: CMErrorType, code: String, localizedDescription: String) {
self.init(domain: CMErrorDomain,
code: type.rawValue,
userInfo: type.localizedUserInfo(code: code,
localizedDescription: localizedDescription))
}
}
这是我在归档时收到的错误。
有人知道是什么问题吗?
谢谢
答案 0 :(得分:0)
最后,我在CMError子类中添加了NSError初始化的替代,并成功将其归档。
public override init(domain: String, code: Int, userInfo dict: [String : Any]? = nil) {
super.init(domain: domain, code: code, userInfo: dict)
}