You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native项目Xcode归档失败:自定义Shell脚本执行报错

React Native项目Xcode归档失败:Command PhaseScriptExecution报错

报错信息

Command PhaseScriptExecution failed with a nonzero exit code
错误发生在「Run custom shell script 'Bundle React Native code and images'」阶段

环境详情

  • Xcode版本:16.0 (16A242d)
  • Node版本:/opt/homebrew/bin/node(which node命令输出)
  • React Native版本:0.74.3
  • macOS版本:15.0.1 (24A348)

已尝试的解决方法

  • 检查node_modules/react-native/scripts路径,发现scripts文件夹缺失
  • 执行npm install/yarn install重新安装依赖,无变化
  • 验证发现$REACT_NATIVE_PATH变量为空
  • 修改脚本为直接调用react-native-xcode.sh,未解决问题
  • 清理Xcode构建文件夹和DerivedData
  • 在ios目录执行pod install --repo-update
  • 已完成Stack Overflow常见修复:更新所有...-frameworks.sh文件,在readlink调用中添加-f参数

补充信息

  • 仅归档过程报错,常规Debug构建无异常
  • 查阅React Native 0.74.3官方文档未找到明确解决方案

解决方案

1. 彻底修复React Native依赖缺失问题

scripts文件夹缺失通常是依赖安装不完整或缓存异常导致,执行以下步骤:

  • 删除依赖目录和锁定文件:
    rm -rf node_modules
    # npm用户执行:
    rm package-lock.json
    # yarn用户执行:
    rm yarn.lock
    
  • 清理包管理器缓存:
    # npm
    npm cache clean --force
    # yarn
    yarn cache clean
    
  • 重新安装依赖并更新Pods:
    npm install # 或 yarn install
    cd ios && pod install --repo-update
    
  • 验证scripts文件夹是否恢复:ls node_modules/react-native/scripts

2. 修正归档阶段的Shell脚本

由于$REACT_NATIVE_PATH为空,使用绝对路径确保脚本能被正确找到,替换「Bundle React Native code and images」阶段的脚本为:

set -e

# 配置Node路径和系统环境变量
export NODE_BINARY=/opt/homebrew/bin/node
export PATH="/opt/homebrew/bin:$PATH"

# 从项目根目录调用React Native打包脚本(Xcode工作目录为ios文件夹)
"$(dirname "$PROJECT_DIR")/node_modules/react-native/scripts/react-native-xcode.sh"

3. 检查Xcode归档构建配置

  • 打开Xcode项目,进入Target的Build Settings,搜索Shell Script Execution,确保Run script only when installing未勾选
  • 确认「Bundle React Native code and images」阶段在Copy Bundle Resources之前执行(在Build Phases中拖拽调整顺序)

4. 适配macOS 15和Xcode 16

macOS 15和Xcode 16对路径解析权限更严格,补充以下操作:

  • 验证Node可执行权限:chmod +x /opt/homebrew/bin/node
  • 若仍有路径歧义,可临时在脚本中硬编码项目根目录(例如/Users/xxx/your-project/node_modules/react-native/scripts/react-native-xcode.sh)测试

内容的提问来源于stack exchange,提问作者Sohaib Bin Mohsin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 10:23:27