什么是Xcode Derived Data?为什么它很重要呢?
“Clean derived data”,当你遇到一些极其奇怪的构建问题时,你也许经常听到这句话。
Derived Data是一个文件夹,它默认情况下位于:~/Library/Developer/Xcode/DerivedData
。它是Xcode存储各种中间构建结果、生成索引等的位置。你可以在Xcode的preferences中设置Derived Data的位置:
在开发过程中,你是不是会遇到一些奇怪的构建问题?项目越复杂,你操作DerivedData的机会就越多。使用Swift大大增加了这种可能性。另外,DerivedData文件夹也因为其占用内存空间太大而臭名昭著。
你可以定期使用以下命令清理该文件夹:
rm -rf ~/Library/Developer/Xcode/DerivedData/*
清理该文件夹有个小缺点:清理之后构建首次构建项目的时候可能会增加构建时间。但是这不影响正常使用。而且还可以回收更多自由的空间内存。
对于经常开发iOS的同学,可以为该命令创建一个类型别名:
alias xcode-clean-derived="rm -rf ~/Library/Developer/Xcode/DerivedData/*"
这样每次就可以在终端执行xcode-clean-derived命令,然后将DerivedData内容清空。