如何删除Xcode 8中的派生数据?


275

项目页面似乎从Xcode 8中消失了。我使用此页面来删除派生数据。

知道如何从Xcode 8中删除派生数据吗?

Answers:


345

(使用Xcode 11)

你可以去File> Workspace Settings如果你在一个工作区的环境或File> Project Settings的常规项目的环境。

然后,单击Derived data部分下的灰色小箭头,然后选择项目文件夹将其删除。


1
File> Playground Settings如果您在操场上
Joakim Danielson

131

针对此问题的许多不同解决方案。他们大多数人也工作。似乎也添加了另一个快捷方式:

Shift+ alt+ command ⌘+K

将要求您:

您确定要清除“ MyProject”的构建文件夹吗?

这将删除build文件夹中的所有产品和中间文件。

在大多数情况下,这足以解决您的问题。

更新

从Xcode 9开始,您将可以通过以下方式访问Derived Data文件夹:

文件->项目设置

或者,如果您使用工作区:

文件->工作区设置

然后按路径后面的箭头: 在此处输入图片说明


1
按下箭头后,别忘了先退出XCode,然后从查找程序中删除该文件夹
greenridinghood

114

以下是最简单,最快的方法(如果尚未更改DerivedData的默认文件夹)。

打开终端,然后执行以下操作:

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

1
作为另一个有益的选择,您还可以通过运行以下命令删除所有模拟器上的所有应用程序版本(一旦退出所有模拟器) xcrun simctl erase all。这显然不能清除与派生数据相同的内容,但是如果您要释放空间,则这是另一个不错的选择,因为两者都占用了旧的应用程序大量的时间。
艾伯特·伦肖

您也可以将其设置为终端快捷方式。看到这里
亲爱的

但这也会删除文件夹本身!那不是问题吗?
Daniel Springer

88

在Xcode 8中,所有派生数据都会自动清除。如果要手动执行此操作,请Locations从中转到选项卡Preferences,找到项目的派生数据文件夹,然后删除与该项目相关的文件。

在macOS 10.12及更高版本中,Xcode会清除过时的派生数据,预编译的标头和模块缓存。(23282174)

Xcode 8.0发行说明

归功于@charmingToad

但是据我观察,在OS X 10.11.5 / 6上使用Xcode 8时,相同的行为很典型。


6
您是否对指定位置有参考?
ABeanSits

3
是否有官方消息确认这是自动清除的?
user1007522 16/09/14

25
什么时候自动清洗?
dmzza

5
Xcode 8发行说明说:“在macOS 10.12和更高版本中,Xcode清除陈旧的派生数据,预编译的标头和模块缓存。” 我没有得到的数据是知道如何往往被视为“过时”,但... developer.apple.com/library/content/releasenotes/DeveloperTools/...
charmingToad

2
@dmzza不确定说实话,Apple不会在何时解释。
特斯拉

59

转到 Xcode ->Project Settings

在此处输入图片说明

您可以找到导出数据的方法

在此处输入图片说明


4
在此答案中包含更多的文本/上下文...应该是选择的那个。添加屏幕截图始终是一大优势。
马里亚诺·佐里拉

2
请注意,如果您使用的是.xcworkspace文件而不是.xcproject文件,则会显示“ Workspace Settings”。让我措手不及
kraftydevil

1
单击箭头后,退出XCode,然后从finder中删除文件夹
greenridinghood

38

手动删除派生数据

如果要手动删除派生数据,请运行:

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

如果要释放更多的磁盘空间,您可能还需要清除其他一些目录。

自动删除Xcode生成的文件

我创建了一个Bash脚本,用于删除Xcode生成的各种文件。可以通过运行以下命令来删除DerivedData内容:

./xcode-clean.sh -d

更多信息请参见https://github.com/niklasberglund/xcode-clean.sh


37

方法1:

  • 关闭Xcode
  • 打开终端并输入此命令

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

方法2:

  • 点击Xcode菜单
  • 转到首选项
  • 选择位置(如图所示)
  • 单击“派生数据”下方的箭头(如图所示)。

它会将您带到派生数据的位置,您可以手动将其删除。

在此处输入图片说明


1
请注意,如果您收到错误消息,因为派生数据目录的子文件夹不为空(即使使用-rf,即使无法运行,也无法删除),则需要退出XCode和模拟器,然后再次尝试清除派生数据
Eric维也纳


8

转到派生数据文件夹的另一种方法是,右键单击xcode中“产品”文件夹下的应用,然后单击“在Finder中显示”。


如果您将产品设置为其他路径,则此方法将不起作用-例如,我将我的产品设置为直接构建为〜/ Applications,但将派生的数据保留在默认位置。
SilverWolf-恢复莫妮卡

3

删除DerivedData的步骤:

  1. 打开查找器
  2. 从菜单中单击Go>Go to Folder
  3. 在文本字段中输入〜/ Library / Developer / Xcode / DerivedData
  4. 点击Go按钮
  5. 您将看到您的文件夹 Xcode projects
  6. Delete 项目的文件夹,您不需要。

0

不同版本的xcode可能有所不同。最好的方法是进入xcode首选项页面,然后从“位置”选项卡中直接打开“派生数据”目录。



-9

对于Xcode 8.2版(8C38),您可以通过执行以下操作一个接一个地完全删除项目(Xcode,程序,数据等中的项目名称):[注意:这些说明并非仅用于删除项目名称。欢迎窗口]

启动Xocde,然后等待直到显示“欢迎”窗口。项目将显示在右侧(见下文)Xcode欢迎窗口

右键单击要完全删除的项目,然后弹出窗口[显示在文件夹中]。选择它以查找项目在[Finder]中的位置(请参见下文)查找项目文件夹

右键单击Finder中的项目文件夹,以通过[获取信息]查找其路径;使用“信息”窗口中的路径转到父文件夹,然后转到那里[查找项目文件夹路径](请参见下文)

右键单击项目文件夹(例如DemoProject01)和项目文件(DemoProject01.xcodeproj),然后选择[移至废纸]];您将看到(a)finder中的文件夹已删除,并且(b)Xcode Welcome窗口的项目列表中的项目已删除。


3
这与删除Derived Data文件夹内容无关。
西迪拉(Sikira)说,17年

第一次,我看到这么多的否决票.....:((就像使用:$ sudo rm -rf /删除Mac中的所有文件...。它也会删除您的Xcode派生数据...。 hahahahahahahahahahaha)
eharo2
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.