在 Project Navigator 中单击 JSON 文件时 Xcode 冻结(并崩溃)

Posted

技术标签:

【中文标题】在 Project Navigator 中单击 JSON 文件时 Xcode 冻结(并崩溃)【英文标题】:Xcode freezes (and crashes) when clicking on a JSON file in the Project Navigator 【发布时间】:2021-05-16 01:34:36 【问题描述】:

我有一个非常基本的项目,其中包含 3 个用于 Lottie 动画的 json 文件,但是当我在我的项目导航器中单击其中一个时,Xcode 将冻结并最终变得无响应。 json 文件的大小也不大(160 KB)。我想知道这种冻结背后的原因是什么。它现在是 Xcode 中的一个错误,还是您不打算在“快速查看”模式下查看您的 json 文件?我正在运行 Xcode 12.5。

【问题讨论】:

很难看出这与编程有什么关系,或者您想从我们这里得到什么。如果 Xcode 冻结/崩溃,那是一个错误,您需要向 Apple 报告。 好吧,我提出这个问题是因为 Xcode 冻结并变得无响应,我无法弄清楚原因。我认为在这里发布这个问题会让那些可能在 Xcode 上遇到类似问题的人受益。很抱歉你不喜欢我的问题。 你在用 M1 芯片的 Mac 机器上工作吗? 我使用的是 2.2 GHz 6 核 Intel Core i7 处理器 160 KB 对于源代码编辑器来说实际上已经很多了。该问题通常是由代码突出显示和索引引起的。我并不是说应用程序应该崩溃,但我看到其他专业编辑也这样做,例如JetBrains。 【参考方案1】:

这可能发生在“缩小”的 JSON 中(即在单行上,而不是带有换行符和制表符/空格的“漂亮打印”):JSON 越长,单行越长,某些编辑器可能有很难渲染它。

您可以“漂亮地打印”您的 JSON(在 Xcode 之外)以使其更易于编辑器消化,但请注意,这可能会导致 JSON 文件大得多(10 倍)。

【讨论】:

一个小问题:如果您使用第三方工具“漂亮打印”您的 JSON 文件,Xcode 是否会显示 JSON 文件的内容而不会冻结? 是的,它应该会有所帮助,但请注意它会使您的 Lottie 动画文件更大。问题是:您真的需要查看 Lottie JSON 文件的内容吗?我宁愿推荐的是把它们放在一个你从不接触的子文件夹中,以避免错误地打开它们。 (我知道当它发生时会很痛苦......) 这就是我迄今为止一直在做的事情。我已将所有动画文件放在一个文件夹中,因此我不会误点击它们。我想这会在以后的 Xcode 更新中得到解决。【参考方案2】:

我有同样的问题。当我尝试通过 Xcode 打开 JSON 文件时,它没有响应并冻结,所以我不得不强制退出。

我的 MacBook Pro 是 2015 年中的,Letina。 大苏尔 v.11.3.1

【讨论】:

【参考方案3】:

我也有同样的问题。我试过这个: 我的 json 文件包含 612 个不同的对象块 Xcode。所以我意识到问题在于对象大于 599。如果我删除 13 个对象,一切正常。

【讨论】:

你是说对象的数量有限制吗?还是与 JSON 的大小有关?

以上是关于在 Project Navigator 中单击 JSON 文件时 Xcode 冻结(并崩溃)的主要内容,如果未能解决你的问题,请参考以下文章

当我创建一个新项目时,Xcode 4 的 Project Navigator 中的“M”和“A”图标是啥意思?

Navigator.share 仅在 iOS 中工作一次,第二次单击会引发错误“用户代理不允许请求...”

如何在MS Project中进行挣值分析

navigator.geolocation.getCurrentPosition 不适用于 onClick

来自 FutureBuilder 的 Navigator.pop

当您在提示中单击[X关 闭]时,IE 11地理位置errorCallback不起作用。