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

Expo从托管工作流Eject到原生工作流后React Native iOS项目无法运行的问题求助

解决 Expo Eject 后 iOS 构建失败的三个核心问题

刚帮好几个开发者处理过类似的Expo转原生工作流后的iOS构建故障,结合你贴的项目配置,咱们逐个击破这些报错:

1. 修复 Packager 脚本路径错误

报错提示找不到launchPackager.command,本质是eject后Xcode项目里的脚本路径指向了错误的层级:

  • 打开iOS目录下的myproject.xcworkspace
  • 选中项目target,切换到Build Phases标签页
  • 找到Bundle React Native code and images这个构建阶段,双击编辑脚本内容
  • 把脚本里的路径替换为指向项目根目录node_modules的相对路径,比如修改为:
    export NODE_BINARY=node
    ../node_modules/react-native/scripts/react-native-xcode.sh
    

2. 解决ExpoModulesCore找不到的Swift编译错误

这个问题基本都是Pod依赖没正确安装或链接导致的,按以下步骤操作:

  • 先清理旧的Pod缓存:
    cd ios
    rm -rf Pods Podfile.lock
    pod deintegrate
    
  • 因为你用的是M1 Mac,执行Pod安装时需要兼容x86架构:
    arch -x86_64 pod install
    
  • 安装完成后检查Xcode配置:
    • 进入Build Settings,找到Framework Search Paths,添加路径$(SRCROOT)/../node_modules/expo-modules-core/ios
    • 确认Swift Language Version设置为Swift 5.0或更高版本

3. 解决xcodebuild退出码65的构建失败

这个错误是前两个问题的连锁反应,解决上面两个后,再做这些收尾操作:

  • 别用react-native run-ios启动项目,改用你package.json里的脚本:
    npm run ios
    
    (expo run:ios会自动处理Expo原生模块的配置,纯原生RN命令做不到这点)
  • 清理Xcode缓存:按下Cmd+Shift+K清理构建缓存,然后重启Xcode
  • 确认Xcode的scheme选择的是myproject,且模拟器/设备处于可用状态

额外检查点

  • 你的expo doctor显示没问题,但再确认下版本兼容:Expo 44确实对应React Native 0.64.3,版本匹配没问题
  • 检查Podfile里的use_expo_modules!是否在target块内,你的配置是正确的,不用改动

按这些步骤走下来,应该能顺利完成iOS项目的构建和运行。

内容的提问来源于stack exchange,提问作者The Cors Error

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 16:03:11