Jonathan在这里建议:Xcode包含已删除的.xib文件!,清理所有目标和清空缓存将修复Xcode的问题,包括删除的.xib文件,但我找不到一种方法来清空Xcode 4中的缓存。
如何在Xcode 4中做到这一点?
Command-Option-Shift-K就可以了。或者,转到产品菜单,按下选项键,现在选项“清洁”将改变为“清洁构建文件夹…”选择该选项。
命令选项- shift - k清除构建文件夹。更好的是,退出Xcode并手动清除~ /图书馆/开发/ Xcode / DerivedData。删除所有的内容,因为有一个错误,Xcode将运行旧版本的项目,在那里的某个地方。(Xcode 4.2会显示派生数据文件夹:选择窗口>管理器,切换到项目选项卡。单击Derived Data文件夹名称右侧的右箭头。)
在模拟器中,选择“iOS模拟器>重置内容和设置”。
最后,为了完整起见,你可以删除/var/folders;一些缓存也发生在那里。
警告:删除/var/folders可能会导致问题,在这样做之后,您可能需要修复或重新安装操作系统。
编辑:我刚刚了解到,如果你害怕处理/var/folders/,你可以在终端中使用以下命令以更有针对性的方式删除:
rm -rf "$(getconf DARWIN_USER_CACHE_DIR)/org.llvm.clang/ModuleCache"
编辑:对于某些与swift相关的问题,我发现删除~ /图书馆/缓存/ com.apple.dt.Xcode很有用。这样做会损失很多东西,比如下载的文档文档集的备用副本,但这是值得的。
我一直在拔自己头上的头发,因为我以为我也有同样的问题。在创建应用程序时,我在iPhone上没有得到与在模拟器上相同的结果。
问题是,我以某种方式制作了MainStoryboard的本地化版本。故事板文件。所以当我在手机上运行应用程序时,它显示的是丹麦版本……模拟器显示的是英文版本。
是的,我是新来的!:)
除了command+option+shift+K,我找到了另一种方法。在XCode 4.2中,有一个可以从右上角图标打开的管理器。您可以从那里清除所有存档和保存的项目选项。这帮助了我的情况(我在mainBundle中看到旧的删除文件)。
要删除所有派生数据和/var/folders中的模块缓存,请使用这个红宝石脚本。
/var/folders
derivedDataFolder = Dir.glob(Dir.home + "/Library/Developer/Xcode/DerivedData/*") moduleCache = Dir.glob("/var/folders/**/com.apple.DeveloperTools*") FileUtils.rm_rf derivedDataFolder + moduleCache
这只是解决了我的fatal error: malformed or corrupted AST file: 'Unable to load module "/var/folders/错误。
fatal error: malformed or corrupted AST file: 'Unable to load module "/var/folders/
除了执行以下操作外,如果应用程序的Storyboard文件已本地化,您可能会遇到此问题。首先,做以下每一件事:
DerivedData
最后对我有用的是重新生成故事板本地化文件并删除英语本地化(这是不需要的,因为Base Locale是英语)。要重新加载你的故事板字符串,在StackOverflow上看到这个答案。
我注意到我的故事板的非文本部分正在被更新,但本地化的文本没有。如果你的应用程序中有本地化,我建议检查以确保本地化已更新(即使它们是.strings文件)。
.strings
您必须小心对待xib文件。我尝试了以上所有的方法,但没有一个对我有效。我正在使用xib中定义的自定义UIButtons,并意识到这可能与我在那里分配的属性没有以编程方式改变的事实有关。如果你在那里定义了图像或文本,删除它们。当我这样做的时候,我的计划改变开始生效。
当我打开文档窗口时,我遇到了一些Xcode 5.1崩溃的问题。
我不确定原因,因为当我打开窗口时,我也在更新文档集。
在Xcode 5中,modules目录现在位于派生数据文件夹中,很明显我没有删除这个文件夹。我删除了~ /图书馆/开发/ Xcode / DerivedData / ModuleCache和~ /图书馆/ / com.apple.Xcode.plist偏好的内容,然后重启Xcode后,一切似乎都正常了。
这是我的Shell脚本解决方案,它删除派生数据并清理项目的缓存资产,适用于Xcode 4,5和6。
有时,简单地在Derived Data目录上调用rm -rf会留下一两个文件,但是我的脚本会循环直到删除所有文件。
我尝试了几乎所有的方法,但无法帮助,帮助我的是禁用SIP(系统集成保护)n它的工作,我不知道什么时候发生了什么,但是系统文件在某个地方混淆并导致此…尽管禁用它可能会有风险
以下是如何
1.打开你的Mac,按住[command]+[R]键进入恢复分区。
2.从恢复分区,从菜单栏单击实用程序,然后选择终端。
4.命令执行后,退出终端并重新启动Mac。当您重新登录OS X时,SIP将被禁用。
Codegen:帮我解决了。
我的“DerivedData”与Xcode 10.2和Mojave在这里:
MacHD /用户/ [MyUser] /图书馆/开发/ Xcode
为我与缓存图像帮助: Xcode→产品→清理生成文件夹
你可以使用PrettyClean清理所有的开发工具缓存,包括Xcode。
步骤:
只需从终端删除派生数据,
rm -rf ~/Library/Developer/Xcode/DerivedData/*