如何让Xcode Cloud信任Swift Macro目标以完成构建?
遇到这个问题,核心是Xcode Cloud没有读取到本地已设置的宏目标启用状态,按下面几个步骤处理:
确认本地宏目标状态并提交配置
打开本地Xcode,在项目的Package Dependencies里找到对应的宏包,展开它的Targets,确保宏目标已经被勾选启用(本地信任对话框确认后其实已经启用,不过再检查一遍更稳妥)。之后把项目的xcodeproj或xcworkspace文件的变更提交到Git仓库——Xcode会把宏目标的启用状态存在这些文件里,Xcode Cloud构建时需要读取这些配置。检查Package.swift的宏配置(若可修改)
如果宏包是你维护的,或者能编辑依赖的Package.swift,要确保宏目标的类型声明正确:.macro( name: "YourMacroTargetName", dependencies: [] )同时主目标的
dependencies里要正确引用这个宏目标,保证依赖关系清晰。验证Xcode Cloud使用的构建方案
打开Xcode的Product > Scheme > Edit Scheme,进入Build阶段,确认宏目标已经在构建列表里。把这个Scheme的变更提交到仓库后,再去Xcode Cloud的构建配置页面(Xcode设置里的Accounts > 你的Apple ID > Xcode Cloud > 对应项目),确认构建用的是这个正确的Scheme,没有遗漏宏目标的构建步骤。清理缓存重试构建
有时候Xcode Cloud的缓存会干扰构建,找到失败的构建记录,点击“Retry with clean cache”选项重新触发构建,排除缓存问题。
内容的提问来源于stack exchange,提问作者Jordan Wood

