Xcode10:Command PhaseScriptExecution failed with a nonzero exit

最近打包一个项目,同样的项目在9.4.1的Xcode中打包正常,在另一台电脑上10.1的Xcode中打包编译报错。

重要信息:其实打包时编译完它弹窗提示我输入登录钥匙串的密码,其实我没太在意,试了几个密码也不对,然后我就把这个窗口关掉了(其实点的是“拒绝”),事实上这是导致我最终错误的根本所在,忘记截图了,具体过程在下面。

Command PhaseScriptExecution failed with a nonzero exit

解决:这是因为Xcode10是默认选中的最新的New Build System(Default),在这个编译系统的环境下,打包的CI脚本一直会报错。

Xcode菜单栏选择File -- Workspace Setting,
把new build system(Defalt)切换到 Legacy Build System 。

Xcode10:Command PhaseScriptExecution failed with a nonzero exit_第1张图片
Xcode10 修改 Workspace Setting

再打包尝试,这个问题没有了,但是出来新的报错:

Command /bin/sh failed with exit code 1

网上查阅各种资料,最终解决方案是:

重启电脑

之后再次打包时会再次提示输入钥匙串密码,证实钥匙串密码和开机密码是同一个,然后点击“允许”或者“始终允许”,输入密码后编译通过,正常导出打包。

网上查到的其他方案有这么几个:

方案一:

  1. 选中项目 -> TARGETS->Build Phases-> “Bundle React Native code and images”
  2. 勾选 “Run script only when installing”
  3. clean
    这个我的情况不好使。

方案二:

可能是钥匙串的原因
没有试这个方法,但是感觉重启电脑解决的也是钥匙串这个问题,为了避免操作钥匙串出现其他问题,我还是选择重启,更简单些。

PS

导出之后发现证书和描述文件都显示没有,查证这是Xcode10.1的bug,可以更新Xcode解决。


Xcode10:Command PhaseScriptExecution failed with a nonzero exit_第2张图片
Xcode10.1导出bug

你可能感兴趣的:(Xcode10:Command PhaseScriptExecution failed with a nonzero exit)