首页 > 解决方案 > 无法让 Ionic 5 部署到物理设备:命令 PhaseScriptExecution 失败

问题描述

我正在尝试将 Ionic 5 项目部署到运行 iOS 14.6 和 XCode 11.4 的 iPhone 12。该应用程序在模拟器上运行良好,但在按照此处的官方说明进行操作后, 我收到Command PhaseScriptExecution failed错误,并且在此之前的日志中出现此错误:

Code Signing /Users/simonhill/Library/Developer/Xcode/DerivedData/App-buuhfmnvjxqcivakwsfsgrdpsrjw/Build/Products/Debug-iphoneos/App.app/Frameworks/Capacitor.framework with Identity Apple Development: xxx@gmail.com (7FSK2UE87Y)
/usr/bin/codesign --force --sign 7B0B8B04EB8EB60F0EB9540253FEC8FB09E379AC  --preserve-metadata=identifier,entitlements '/Users/simonhill/Library/Developer/Xcode/DerivedData/App-buuhfmnvjxqcivakwsfsgrdpsrjw/Build/Products/Debug-iphoneos/App.app/Frameworks/Capacitor.framework'
Warning: unable to build chain to self-signed root for signer "Apple Development: simonhill303@gmail.com (7FSK2UE87Y)"
/Users/simonhill/Library/Developer/Xcode/DerivedData/App-buuhfmnvjxqcivakwsfsgrdpsrjw/Build/Products/Debug-iphoneos/App.app/Frameworks/Capacitor.framework: errSecInternalComponent

我按照说明创建了我的 Apple 证书,但不明白如何修复此错误。我试过这个答案Error Xcode 10 。PhaseScriptExecution 以非零退出代码失败:errSecInternalComponent但无法使其工作。

更新可能是这个问题https://developer.apple.com/support/expiration/

已知问题 Xcode 11.4.0 及更早版本可能无法使用新的 Apple 全球开发者关系认证中间证书颁发的签名证书对软件进行签名。如果您无法在构建机器上升级到支持版本的 macOS 或 Xcode,您可以使用早期的 Xcode 客户端构建和归档您的应用程序,并使用最新版本对其进行签名以进行分发。或者,您可以利用 codesign 工具使用命令行对您的软件进行签名。

绝对看起来像这个问题:https ://developer.apple.com/forums/thread/660087

标签: ionic-frameworkcapacitorionic5

解决方案


更新 XCode 解决了这个问题 (12.4)。


推荐阅读