【发布时间】:2018-11-18 23:25:08
【问题描述】:
我一定是个白痴什么的,但我连续第三天摸不着头脑,不知道在我的 Swift 程序中编码一些 JSON 数据的意图出了什么问题...
情况如下: 我有两个类如下:
class Node: Codable {
// Nothing in here
}
和
class Shape: Node {
// No code here too
}
然后,我尝试将子类编码如下:
do {
let encodedData = try JSONEncoder().encode(Shape())
} catch {
print(error)
}
这就是我添加到一个空的 Single View App 项目中的全部内容。当我运行它时,我得到“线程 1:EXC_BAD_ACCESS (code=1, address=0x350)”崩溃。
当然,最初我的类曾经有很多可编码的属性。我以为是它们中的任何一个,所以我将它们剥离了,但似乎不是导致崩溃的属性...
我在 High Sierra MacBook Pro 上运行 Xcode 9.3。有没有人愿意重现这一点,或者有人已经将他的头撞到了这种奇怪的行为中?
【问题讨论】:
-
这听起来很有希望。所以,那我的设置肯定有问题。关于重置或重新安装什么的任何想法?请注意,我创建了一个全新的项目,因此这应该排除以前对项目本身的更改造成的任何遗留问题。也许这与某种未对齐的设置有关?
-
这正是我所做的,马特 :(
-
是的,清理构建,然后关闭 Xcode,删除该特定项目的 DerivedData,删除 DerivedData 的 ModuleCache 子文件夹(不确定是否必须这样做),然后重新启动 Xcode。结果相同。我还能采取其他措施吗?
-
Matt,尽管我根本没有使用模拟器,但我还是按照你的建议删除了所有模拟器,退出 Xcode,完全清空 DerivedData 文件夹,包括 ModuleCache,重新启动 Mac,我们又来了 -优雅地崩溃...也许重新安装 Xcode 是下一步?
标签: ios json swift crash codable