Xcode占用空间过大可安全清理:一、清DerivedData缓存;二、删旧Archives归档;三、卸载不用的iOS DeviceSupport文件;四、清理CoreSimulator设备数据及tmp;五、通过Xcode界面删除冗余模拟器Runtime。
如果您发现Mac硬盘空间告急,而“系统数据”或“其他”类别中Xcode相关占用异常庞大,则很可能是派生数据、旧模拟器运行时、归档文件及设备支持文件长期累积所致。以下是多种安全、可操作的清理方法:
一、彻底清除DerivedData编译缓存
DerivedData文件夹存储了所有项目的编译中间产物、索引、调试符号和构建输出,是Xcode空间占用的第一大来源。这些文件完全可再生,删除后Xcode会在下次编译时自动重建,不影响源码或项目配置。
1、打开访达(Finder),按下Shift + Command + G调出“前往文件夹”窗口。
2、粘贴路径:~/Library/Developer/Xcode/DerivedData,回车进入。
3、全选该目录下所有子文件夹(可按大小排序识别体积最大的旧项目缓存)。
4、将选中内容直接拖入废纸篓,并执行清空废纸篓。
二、删除历史归档文件(Archives)
每次执行Product → Archive生成的应用归档包,均被完整保存在Archives目录中,包含dSYM、IPA和构建日志。多版本归档极易累积数GB至数十GB空间,且旧版发布包通常已无调试或分发价值。
1、在访达中再次使用Shift + Command + G,输入路径:~/Library/Developer/Xcode/Archives。
2、按修改日期排序,展开年份子文件夹(如“2023-10.xcarchive”“2022-05.xcarchive”)。
3、勾选确认不再需要的历史归档(建议保留最近3个月内用于TestFlight或App Store Connect的版本)。
4、将选定归档文件直接拖入废纸篓并清空。
三、卸载旧iOS设备支持文件(iOS DeviceSupport)
当您曾连接不同型号、不同系统版本的真机进行调试时,Xcode会自动下载对应版本的符号文件与调试支持包,存放于iOS DeviceSupport目录。这些文件仅在连接对应设备时才被调用,旧版本(如iOS 14.2、iOS 15.0)可安全移除。
1、使用Shift + Command + G进入:~/Library/Developer/Xcode/iOS DeviceSupport。
2、查看各子文件夹名称,识别含已淘汰系统版本号的目录(例如“14.2 (18B92)”“15.0 (19A339)”)。
AKOOL
一站式AI视觉内容生成平台
下载
3、选中这些旧版本文件夹,拖入废纸篓。
4、注意:请勿删除当前正在使用的iOS版本对应文件夹(如当前主力设备为iOS 17.6,则保留“17.6”文件夹)。
四、清理CoreSimulator设备数据与临时文件
每个模拟器实例运行后都会生成独立的UDID命名文件夹,内含应用安装数据、用户偏好、日志及临时文件(尤其是Data/tmp)。长期未清理的模拟器设备数据可能单个就达数GB。
1、在访达中前往:~/Library/Developer/CoreSimulator/Devices。
2、浏览子文件夹,识别名称中含已弃用设备型号(如“iPhone 8 Plus”“iPad Pro (9.7-inch)”)或创建时间久远(右键→显示简介查看“修改日期”)的文件夹。
3、对目标设备文件夹,进入其内部的data/tmp子路径,清空该目录下全部内容。
4、如需更彻底释放,可直接删除整个设备文件夹(Xcode重启后会按需重建新设备实例)。
五、通过Xcode界面删除冗余模拟器运行时(Runtimes)
模拟器运行时(Runtime)是支撑不同iOS版本模拟的核心系统镜像,每下载一个版本(如iOS 16.4、iOS 17.2)即占用约5–8GB。Xcode不会自动清理过期Runtime,需手动干预。
1、启动Xcode,点击顶部菜单栏Window → Devices and Simulators。
2、切换到Simulators标签页。
3、在左侧列表中,找到标有“Downloaded”状态但当前未被任何模拟器设备启用的Runtime(如“iOS 15.7”“tvOS 16.0”)。
4、选中该Runtime,点击右下角“-”按钮,在弹窗中确认Delete。
