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

导出IPA时出现'React/RCTBridgeModule.h'文件未找到错误求助

解决React Native Archive时找不到React/RCTBridgeModule.h的问题

我之前帮不少开发者排查过这个问题,核心原因基本都是Archive模式下React Native的头文件搜索路径配置不到位,尤其是你同时打包iOS和watchOS目标时,Debug和Archive模式的配置差异很容易触发这个报错——毕竟模拟器Debug时Xcode会自动处理一些路径,但Archive(Release)模式下会严格按照Build Settings来执行。

下面是一步步的排查和解决方法:

  • 先检查主iOS Target的Build Settings
    打开Xcode,选中你的主iOS项目Target,切换到Build Settings标签:

    1. 搜索Header Search Paths,确认里面包含$(SRCROOT)/../node_modules/react-native/React,并且把这个路径的设置改成recursive(递归搜索,这样能找到所有子目录下的头文件)
    2. 再搜索Framework Search Paths,确保包含$(SRCROOT)/../node_modules/react-native/ReactCommon,同样设置为recursive
  • 重点检查watchOS Extension Target的配置
    因为你选了iOS+watchOS设备打包,watchOS的Extension Target很可能没继承主项目的头文件路径:

    1. 选中watchOS Extension Target,同样进入Build Settings,找到Header Search Paths,添加$(SRCROOT)/../../node_modules/react-native/React(注意这里的路径层级,因为watchOS的目录一般在主项目的子文件夹里,所以要多退一级),设置为recursive
    2. 另外,Vibration模块本身在watchOS上没有官方支持,你可以做两个处理:
      • 进入watchOS Extension的Build Phases > Compile Sources,把RCTVibration.m这类相关文件从列表中移除
      • 或者在引用Vibration的代码里用条件编译,只在iOS平台引入:
        #if TARGET_OS_IOS
        #import "RCTVibration.h"
        #endif
        
  • 清理缓存,重新构建
    很多时候缓存会导致配置不生效,按下面的步骤来:

    1. 终端进入项目的ios目录,执行pod deintegrate && pod install,彻底重新安装依赖
    2. 在Xcode里按住Option键,点击Product菜单,选择Clean Build Folder(普通的Clean不够彻底)
    3. 重启Xcode,再尝试执行Archive
  • 检查React Native版本兼容性
    如果你的RN版本比较旧(比如0.6x及以下),同时打包iOS和watchOS时确实容易出现路径兼容问题,建议升级到最新的稳定版(比如0.7x系列),或者查看RN的官方Release Notes,有没有针对watchOS打包的修复内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 09:29:39