升级Xcode 9.3后创建Xcode Server bot报错:无法找到匹配目标
我之前升级Xcode到9.3后配置Bot时也碰到过几乎一模一样的问题,给你几个实际试过有效的排查方向:
核对Bot的目标设备ID是否匹配当前可用模拟器
升级Xcode后,部分模拟器的UUID可能会发生变化,你之前在Bot里指定的旧ID自然就找不到了。去Xcode Server的「设备」列表里查看当前可用模拟器的实际UUID,然后对比Bot构建设置里的目标设备ID,把旧ID替换成新的就行。确认Xcode Server使用的Xcode版本是9.3
本地升级Xcode后,Xcode Server可能默认还是绑定旧版本的Xcode,导致设备识别逻辑不匹配。进入Xcode Server的设置页面,找到「Xcode版本」选项,确保选中的是刚升级的9.3版本。清理Bot的构建缓存和Derived Data
旧的缓存数据可能残留了过时的设备信息,导致Bot构建时找错目标。你可以在Bot的设置里找到「清理缓存」的选项,或者手动删除Xcode Server的Derived Data目录:~/Library/Developer/XcodeServer/DerivedData,然后重新触发构建。重新注册目标模拟器
有时候模拟器的配置文件会在Xcode升级后损坏,先打开本地Xcode的「Window > Devices and Simulators」,找到对应的模拟器,右键选择「Show in Finder」,删除该模拟器的配置文件,然后重新添加一个同版本的模拟器,再更新Bot里的目标设备ID。重新执行Pod安装并提交代码
虽然你说部署目标一致,但Pod的构建缓存可能和新Xcode版本不兼容。在本地项目目录执行pod deintegrate && pod install,把更新后的Podfile.lock提交到版本库,再让Bot拉取最新代码重新构建。
内容的提问来源于stack exchange,提问作者user7684436

