iOS运行React Native应用出现PhaseScriptExecutionError报错如何解决
错误根因
该PhaseScriptExecution报错核心是构建阶段执行XCFrameworks拷贝脚本时,rsync无法找到@unimodules/core包下UMCore.xcframework对应的ios-arm64_x86_64-simulator架构切片,通常由依赖文件损坏、版本不兼容或XCode架构配置错误导致。
解决步骤
- 全链路清理缓存重装依赖,在项目根目录依次执行以下命令:
执行完成后清理XCode Derived Data,重新运行项目即可。# 清理前端依赖缓存 rm -rf node_modules package-lock.json yarn.lock # 重新安装前端依赖 npm install # 清理iOS端缓存 cd ios && rm -rf Pods Podfile.lock build # 重新安装pod依赖 pod install --repo-update - 若上述操作无效,检查版本适配:旧版
@unimodules/core已停止维护,与React Native 0.64及以上版本存在兼容性问题,可将@unimodules/core升级到与你当前RN版本匹配的兼容版本;若项目未使用unimodules相关能力,直接移除该依赖即可。 - 调整XCode架构配置:打开XCode项目,进入Build Settings页面,找到
Excluded Architectures配置项,给Debug模式的iOS Simulator选项添加arm64,同时确认ONLY_ACTIVE_ARCH在Debug模式下取值为YES。 - 手动补全缺失文件:进入
node_modules/@unimodules/core/ios/UMCore.xcframework目录,确认是否存在ios-arm64_x86_64-simulator文件夹,若不存在,可将目录下已有的模拟器架构文件夹重命名为该名称,或下载对应版本的UMCore.xcframework替换当前损坏的文件。
内容的提问来源于stack exchange,提问作者Deepa Thalikar
相关产品推荐
相关产品推荐

