You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

终端执行SPM resolve依赖后Xcode项目Scheme消失如何解决

问题诱因

这个是Xcode 13.x版本内置Swift Package Manager(SPM)的已知兼容性bug:

  • 你在终端执行swift package resolve、swift test等SPM命令时,会在包根目录生成.build缓存目录,该目录的配置规则和Xcode 13内置SPM的缓存规则不兼容
  • Xcode读取到冲突的缓存信息后,会出现包索引异常,无法识别已有的target,自然无法自动生成对应Scheme,手动触发自动生成也会因为索引异常失效
修复方案

临时恢复Scheme

  1. 完全退出Xcode,终止所有相关后台进程
  2. 在包根目录执行以下操作删除冲突缓存:
rm -rf .build *.xcodeproj xcuserdata xcshareddata
  1. 双击Package.swift重新打开项目,等待Xcode完成包索引后,Scheme会自动恢复

永久避免重复出现

  • 日常开发优先在Xcode内部执行包操作:更新依赖走「文件 > 包 > 更新到最新的包版本」,测试直接选中测试Scheme按Cmd+U执行,不要混用终端SPM命令和Xcode打开的包项目
  • 若必须在终端执行SPM命令,执行完成后先删除.build目录再打开Xcode
  • 也可以手动生成固定Xcode项目文件,终端执行swift package generate-xcodeproj后打开生成的xcodeproj文件,Scheme会固定存储在项目配置中不会丢失,后续修改Package.swift后重新执行该命令同步配置即可

补充:如果设备上共存多个Xcode版本,执行SPM操作前先通过xcode-select -s /Applications/Xcode13.1.app/Contents/Developer命令将终端开发路径对齐到你正在使用的Xcode版本,版本不匹配也会触发该问题

内容的提问来源于stack exchange,提问作者NSFish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 05:06:04