PhaseScriptExecution失败,jenkins中的生成IOS退出代码错误为非零

时间:2019-01-28 07:09:38

标签: ios swift xcode jenkins

我尝试在jenkins中建立用于构建IOS 但是我有这个问题↓

Command PhaseScriptExecution failed with a nonzero exit code

** ARCHIVE FAILED **


The following build commands failed:
    PhaseScriptExecution [CP]\ Embed\ Pods\ Frameworks /Users/imac/Library/Developer/Xcode/DerivedData/thaiinfo-fejujxllcuzoxdgfelazriqdkpxt/Build/Intermediates.noindex/ArchiveIntermediates/thaiinfo/IntermediateBuildFilesPath/thaiinfo.build/Release-iphoneos/thaiinfo.build/Script-7145B11BB11164E5D77D6B12.sh
(1 failure)
Build step ‘Xcode’ marked build as failure
[OS X] restore keychains as defined in global configuration
[Sample_ios_swift] $ /usr/bin/security list-keychains -s /Users/imac/Library/Keychains/login.keychain
[Sample_ios_swift] $ /usr/bin/security default-keychain -d user -s /Users/imac/Library/Keychains/login.keychain
Finished: FAILURE

我该如何解决? 我正在使用Xcode 10.1,Jenkins 2.159 我已经搜索过了,但无法解决。

2 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,所以我将解释如何使它起作用:

  • 打开一个终端
  • 转到您的项目根目录,即詹金斯(Jenkins)创建的项目根目录
  • 您必须是jenkins用户:sudo su jenkins
  • 启动xcodebuild命令(您可以从jenkins的控制台输出中获取该命令)
  • 您现在应该弹出有关xcode签名的弹出窗口,选择始终允许。
  • 现在您应该可以在Jenkins上编译iOS应用了。

答案 1 :(得分:0)

就我而言,不是这样。您必须使用以下命令从CI Shell(Jenkins)访问钥匙串:

安全性设置键分区列表-S apple-tool:,apple:-s -k $ PASSWORD -t private /Users/******/Library/Keychains/login.keychain-db

这花了我大约1.5天的时间来解决。我希望我的回答也能对其他人有所帮助。实际上,这里已经讨论了这个问题: security / codesign in Sierra: Keychain ignores access control settings and UI-prompts for permission