迦太基复制框架在Azure DevOps管道中失败

时间:2020-03-06 18:40:48

标签: azure-devops carthage

我的项目使用Carthage并在本地成功构建,但是当我尝试使用Microsoft Hosted Agent上的Azure DevOps管道构建它时,出现此错误:

以下构建命令失败:

PhaseScriptExecution迦太基\复制\框架/用户/运行者/库/开发人员/Xcode/DerivedData/My-Scheme-euhffgcbmkrrcmfffhaqpabtlubp/Build/Intermediates.noindex/My-Scheme.build/Release-iphoneos/My-Scheme。脚本-DB5433C1239AF75F00C0B252.sh (1次失败)

[错误]错误:/ usr / bin / xcodebuild失败,返回码:65

这是我的迦太基复制框架构建阶段:

/usr/local/bin/carthage copy-frameworks

我的猜测是,Azure机器的配置有所不同,但是我不知道该怎么修复。

我也收到此错误:

❌致命错误:/Applications/Xcode_10.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo:输入文件:/ Users / runner / Library / Developer / Xcode / DerivedData / My-自打开以来,Scheme-euhffgcbmkrrcmfffhaqpabtlubp / Build / Products / Release-iphoneos / Realm.framework.dSYM / Contents / Resources / DWARF / Realm已更改(未定义错误:0)

1 个答案:

答案 0 :(得分:0)

即使迦太基在本地没有造成任何问题,如果您的方案构建了运行carthage copy-frameworks命令的多个目标,代理计算机也可能会抛出类似以上错误:Realm changed since opened (Undefined error: 0)

似乎同时访问了同一文件,因为并行构建了多个目标。就我而言,正在为我的应用目标和测试目标运行carthage copy-frameworks。解决此问题的方法是让您的方案仅构建应用目标:

Product > Scheme > Edit Scheme > Build (n targets) > Target to Remove > Select -