SwiftyJSON.swift文件给出了“NSNumber'”的冗余一致性错误。协议'可比较'
extension NSNumber: Swift.Comparable {
var isBool:Bool {
get {
let objCType = String.fromCString(self.objCType)
if (self.compare(trueNumber) == NSComparisonResult.OrderedSame && objCType == trueObjCType)
|| (self.compare(falseNumber) == NSComparisonResult.OrderedSame && objCType == falseObjCType){
return true
} else {
return false
}
}
}
}
答案 0 :(得分:0)
我找到了另一个解决方案。如果您将swifty.json添加到项目作为源代码(没有pod),则应从源代码中删除所有import SwiftyJSON
行。
答案 1 :(得分:0)
我的应用程序正在使用它并且长时间没有问题,突然间这个问题开始发生了。这是我的情景:
使用SwiftyJSON库进行应用编译并运行正常。
开始在应用中使用单元测试。可以像普通的Run和Test环境一样启动应用程序,无需编译或运行问题。
在项目中进行了一些更改(从任何目标成员中添加和删除了一些类)。
如果我尝试在测试模式下运行,问题就会突然发生,正常运行启动时不会出现问题。
制作产品 - >干净,没有运气。
去了我的版本控制,发现添加和删除任何目标成员资格的类都改变了文件" project.pbxproj" (因为它完全符合逻辑)。但最终得到了项目的状态(步骤2),我意识到出现在" project.pbxproj"中的文件的顺序。文件已更改,也就是说,在步骤3中进行更改后,并在项目中手动将状态恢复为步骤2,文件中的更改仍然存在。
好吧,我尝试过somenthing:如果它在步骤2之后假设项目结构现在是相同的,那么我去了版本控制并忽略了" project.pbxproj"文件。然后转到xCode并在Test中启动了一个运行,编译SwiftyJSON的问题消失了
<强>结论:强> 我不知道这是不是原因,但它让我觉得文件&#34;宣布&#34; project.pbxproj文件中的文件是以某种方式编译的,并且似乎与编译器在其他文件之前相关(我不是专家编译进程)。