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

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


当前回答

只需从终端删除派生数据,

   rm -rf ~/Library/Developer/Xcode/DerivedData/*

其他回答

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

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

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

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

只需从终端删除派生数据,

   rm -rf ~/Library/Developer/Xcode/DerivedData/*

要删除所有派生数据和/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/文件夹/错误为我。

当使用“数据模型”时,在检查器中有选项 Generare类,对我来说,这是情况,因为已经有一个类 使用现有名称。

Codegen:帮我解决了。

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

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