Jonathan在这里建议:Xcode包含已删除的.xib文件!清理所有目标和清空缓存将修复Xcode的问题,包括删除的.xib文件,但我找不到一种方法来清空Xcode 4中的缓存。

如何在Xcode 4中做到这一点?


当前回答

您必须小心对待xib文件。我尝试了以上所有的方法,但没有一个对我有效。我正在使用xib中定义的自定义UIButtons,并意识到这可能与我在那里分配的属性没有以编程方式改变的事实有关。如果你在那里定义了图像或文本,删除它们。当我这样做的时候,我的计划改变开始生效。

其他回答

下面是我的shell脚本解决方案,用于删除派生数据和清理项目的缓存资产,适用于Xcode 4,5和6。

有时,简单地在Derived Data目录上调用rm -rf会留下一两个文件,但是我的脚本会循环直到删除所有文件。

你可以使用PrettyClean清理所有的开发工具缓存,包括Xcode。

步骤:

Goto网站https://pretty-clean.github.io/ 下载PrettyClean 安装PrettyClean 打开扫描 选择Xcode 执行清洁

除了执行以下操作外,如果应用程序的Storyboard文件已本地化,您可能会遇到此问题。首先,做以下每一件事:

清洁的构建 重置模拟器 重启Xcode 删除~/Library/Developer/Xcode/DerivedData文件夹 重新启动计算机

最后对我有用的是重新生成故事板本地化文件并删除英语本地化(这是不需要的,因为Base Locale是英语)。要重新加载故事板字符串,请参阅StackOverflow上的答案。

我注意到我的故事板的非文本部分正在被更新,但本地化的文本没有。如果你的应用中有本地化,我建议检查确保本地化已经更新(即使它们是.strings文件)。

对我来说,缓存图像有帮助: Xcode -> Product -> Clean Build Folder

要删除所有派生数据和/var/文件夹中的模块缓存,请使用这个小ruby脚本。

derivedDataFolder = Dir.glob(Dir.home + "/Library/Developer/Xcode/DerivedData/*")
moduleCache = Dir.glob("/var/folders/**/com.apple.DeveloperTools*")
FileUtils.rm_rf derivedDataFolder + moduleCache

这只是解决了一个致命的错误:畸形或损坏的AST文件:“无法加载模块”/var/文件夹/错误为我。