升级Xcode 14.3后Flutter项目归档报错:Command PhaseScriptExecution失败
解决Xcode 14.3归档Flutter项目时PhaseScriptExecution报错的方案
以下是针对该问题的几种有效排查和解决方法:
修改Run Script脚本内容
打开Xcode中Runner target的Build Phases,找到Run Script阶段,将原有脚本内容替换为:"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" build同时可在终端执行命令确保脚本拥有执行权限:
chmod +x $FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh升级/降级Flutter版本适配Xcode 14.3
Xcode 14.3对Flutter版本有最低兼容要求,建议升级到稳定版3.7.10及以上:flutter upgrade若最新稳定版仍有问题,可尝试降级到已知兼容的版本:
flutter downgrade 3.7.10彻底重置Pods依赖
仅执行pod update可能无法解决深层依赖问题,按以下步骤操作:- 清除Flutter项目缓存:
flutter clean - 进入ios目录删除Pods相关文件:
cd ios && rm -rf Pods Podfile.lock && cd .. - 重新安装Pods并更新仓库:
cd ios && pod install --repo-update && cd ..
同时检查Podfile中的iOS版本配置,确保不低于12.0:
platform :ios, '12.0'- 清除Flutter项目缓存:
调整Xcode构建设置
- 打开Product > Scheme > Edit Scheme,选择Build选项卡,取消勾选Parallelize Build
- 在Runner的Build Settings中,找到Build Options下的Enable Index-While-Building Functionality,设置为No
排查签名配置问题
进入Runner target的Signing & Capabilities面板,确认签名证书和Provisioning Profile有效;也可在Xcode的Preferences > Accounts中,选中对应Apple ID后点击Download Manual Profiles重新获取配置文件。手动执行构建命令定位具体错误
如果以上方法无效,在终端执行以下命令触发构建,查看详细报错信息以定位问题:flutter build ios --release
内容的提问来源于stack exchange,提问作者user6097845
相关产品推荐
相关产品推荐

