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

Expo构建iOS模拟器本地应用失败,遭遇两类Hermes引擎错误

解决方案

1. 修复expo-linking的TypeError问题

  • 手动指定与Expo 49兼容的expo-linking版本(Expo 49对应版本为~5.0.2),执行安装:
    npm install expo-linking@~5.0.2
    
  • 执行彻底的缓存清理与依赖重置:
    npx expo start --clear
    rm -rf ios/Pods ios/Podfile.lock
    rm -rf node_modules package-lock.json
    npm install
    pod install --project-directory=ios
    
  • 检查iOS Podfile的Hermes配置,确保启用状态正确:
    use_react_native!(
      :path => config[:reactNativePath],
      :hermes_enabled => true
    )
    

2. 解决"main"未注册问题

该问题多由第一个错误导致模块加载失败,进而未触发AppRegistry.registerComponent,解决第一个问题后按以下步骤操作:

  • 彻底终止Metro进程(Cmd+C),关闭iOS模拟器
  • 重新执行构建命令:
    npx expo run:ios
    
  • 检查项目入口文件(如App.js或index.js),确保组件注册代码正确:
    import { AppRegistry } from 'react-native';
    import App from './App';
    import { name as appName } from './app.json';
    
    AppRegistry.registerComponent(appName, () => App);
    

3. 排查第三方库兼容性

react-native-ui-lib@7.14.4可能与Expo 49存在适配问题,可尝试临时移除该包后重新构建。若问题消失,需等待该库更新适配版本,或寻找替代方案。

4. 重置iOS原生构建文件

执行命令重新生成iOS原生配置文件,确保所有配置与当前依赖匹配:

npx expo prebuild --clean
npx expo run:ios

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 13:42:37