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

使用eas build -p ios构建iOS应用时fastlane阶段失败求助

解决iOS EAS构建main.jsbundle缺失及启动崩溃问题

修复main.jsbundle缺失的无Xcode环境方案

  • 手动生成JS bundle并指定路径:
    在项目根目录执行以下命令,强制生成bundle文件到iOS目录:
    npx react-native bundle --entry-file index.js --platform ios --dev false --bundle-output ios/main.jsbundle --assets-dest ios/assets
    
    完成后重新运行eas build -p ios,确保构建过程能读取到生成好的bundle。
  • 校验eas.json构建配置:
    检查build节点下的iOS配置,确认是否包含清理预构建的命令,比如:
    "ios": {
      "prebuildCommand": "npx expo prebuild --clean"
    }
    
    避免旧缓存干扰bundle生成流程。

解决--clear-cache后启动崩溃的调试方法

  • 解析崩溃日志:
    重点查看日志中Thread 0的堆栈信息,常见崩溃原因包括:
    • main.jsbundle路径配置错误,App启动时无法加载;
    • 原生依赖未正确安装(如Pods未同步);
    • Info.plist缺失必要权限配置,触发启动异常。
  • 交互式构建调试:
    运行eas build -p ios --interactive进入交互式模式,全程监控fastlane执行步骤,重点排查bundle install、react-native bundle环节的报错,定位具体故障点。
  • 本地预构建验证:
    执行npx expo prebuild --platform ios生成iOS原生项目,检查ios目录下是否存在main.jsbundle和assets文件夹;再运行pod install --project-directory=ios验证依赖安装状态,提前在本地排查问题。

额外排查项

  • 确认CLI版本:
    执行expo --version和eas --version,确保使用稳定版本,避免版本兼容性问题导致bundle生成失败。
  • 检查.gitignore:
    确认ios/main.jsbundle和ios/assets未被误加入忽略列表,否则构建时无法提交这些关键文件。

内容的提问来源于stack exchange,提问作者MouseWarrior

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 22:45:39