带你理解Xcode Derived Data

什么是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内容清空。

posted @ 2019-07-11 17:53  zhanggui  阅读(10815)  评论(1编辑  收藏  举报