【发布时间】:2017-06-07 03:38:35
【问题描述】:
我在 macOS Sierra 上使用 Xcode 8.3.2 时遇到了一个奇怪的严重问题。我可以使用 fastlane 或手动执行命令在构建机器上本地构建应用程序。开发和临时构建都可以在本地创建。
$ fastlane <lane_name>
但是当从 TeamCity 尝试相同的操作时,它会引发以下错误。
[exec]/usr/bin/codesign --force --sign 5609CEE02FBF256EDBF60DB28C1A2995A2153B5B --entitlements /Users/<username>/Library/Developer/Xcode/DerivedData/<AppName>-frpvxgdtafatrrgbjqbbepgfzvak/Build/Intermediates/ArchiveIntermediates/SabaMeeting/IntermediateBuildFilesPath/<AppName>.build/Release-iphoneos/<AppName>.build/<AppName>.app.xcent --timestamp=none /Users/<username>/Library/Developer/Xcode/DerivedData/<AppName>-frpvxgdtafatrrgbjqbbepgfzvak/Build/Intermediates/ArchiveIntermediates/SabaMeeting/InstallationBuildProductsLocation/Applications/<AppName>.app
[exec] /Users/<username>/Library/Developer/Xcode/DerivedData/SabaMeeting-frpvxgdtafatrrgbjqbbepgfzvak/Build/Intermediates/ArchiveIntermediates/SabaMeeting/InstallationBuildProductsLocation/Applications/<AppName>.app: unknown error -1=ffffffffffffffff
[exec] Command /usr/bin/codesign failed with exit code 1
[exec]
[exec] ** ARCHIVE FAILED **
[exec]
[exec]
[exec] The following build commands failed:
[exec] CodeSign /Users/<username>/Library/Developer/Xcode/DerivedData/SabaMeeting-frpvxgdtafatrrgbjqbbepgfzvak/Build/Intermediates/ArchiveIntermediates/<AppName>/InstallationBuildProductsLocation/Applications/SabaMeeting.app
[exec] (1 failure)
TeamCity 提取代码甚至执行命令但失败。 构建步骤:使用自定义脚本设置 TeamCity 命令行。 尝试了以下方法但不起作用:
- Xcode Preferences ->Accounts->删除已经添加的账号并重新添加
- 生成新的分发和开发者证书并安装在 KeyChain 中。新的 Provisioning Profiles 并安装在 Xcode 中。
- 通过“允许所有应用程序访问此项目”验证了对私钥的钥匙串访问。将证书从登录名移至系统,并对所有人进行访问控制。
- 重装xcode 8.3.2,重启机器。
- 已安装 Apple 全球开发者关系证书颁发机构。
- 应用程序和派生数据目录中不允许使用已验证的资源分叉、查找器信息或类似的碎屑。 https://developer.apple.com/library/content/qa/qa1940/_index.html
- 该项目不使用 CocoaPods。
- 已尝试清除 DerivedData。
还有更多的研发。任何帮助将不胜感激。
【问题讨论】:
-
看起来代码签名与您的本地机器不匹配......您能分享更多信息吗? Xcode 项目的配置文件部分的屏幕截图,这个失败来自健身房、比赛、叹息之后的什么 fastlane 命令?你在快速文件中使用
use_legacy_build_api:true吗? -
我没有使用自动代码签名。 use_legacy_build_api:true 自 Xcode 8 起已弃用,因此我没有使用它。正如我所说,fastlane 正在构建机器上本地执行和创建构建,但不是在从 TeamCity 触发时。 imgur.com/a/lI63T
标签: ios teamcity xcode8 macos-sierra codesign