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

执行react-native link后出现RCTBridge类重复接口定义错误

解决React Native字体链接后Xcode出现"Duplicate interface definition for class 'RCTBridge'"错误

这是React Native自动链接资源后很容易碰到的重复定义问题,结合你的推测(头文件引用问题),我整理了几个实用的排查和解决方向:

  • 先清理重复的链接资源
    自动链接react-native link有时候会重复添加资源或库引用,导致冲突:

    1. 先执行react-native unlink取消所有自动链接的资源
    2. 打开Xcode项目,进入对应target的Build Phases:
      • 在Copy Bundle Resources里检查是否有重复的字体文件或RCT相关资源,删掉重复项
      • 在Link Binary With Libraries里查看是否有重复的libRCTBridge.a或其他RCT系列库,移除重复的引用
  • 统一头文件引用方式并检查搜索路径
    混合的头文件引用方式或者错误的搜索路径会导致重复加载:

    1. 检查项目中所有引用RCTBridge.h的文件,统一使用<RCTBridge.h>(框架引用)或"RCTBridge.h"(本地引用),不要混合使用
    2. 进入Xcode target的Build Settings,搜索Header Search Paths:
      • 移除重复的路径条目
      • 调整路径的递归/非递归属性,比如把RN相关的路径设为非递归,避免深层重复引用
  • 彻底清理缓存并重建项目
    缓存残留也可能引发这类奇怪的编译错误:

    1. 终端执行:
      watchman watch-del-all
      rm -rf node_modules && npm install
      rm -rf ios/build
      
    2. 在Xcode中执行Product -> Clean Build Folder(快捷键Cmd+Shift+K),然后重启Xcode再尝试编译
  • 排查第三方库兼容性
    部分第三方库可能和当前RN版本不兼容,导致重复定义RCTBridge:

    1. 回忆最近安装的第三方库,暂时移除(执行npm uninstall [库名]),然后重新编译看是否解决问题
    2. 如果定位到问题库,去它的仓库查看是否有针对RN版本的更新,或者相关的issue解决方案
  • 改用手动添加字体替代自动链接
    如果自动链接总是出问题,可以绕开它手动配置:

    1. 把字体文件拖入Xcode项目,勾选"Copy items if needed"和对应的target
    2. 打开Info.plist,添加Fonts provided by application数组,将每个字体的完整文件名(比如CustomFont-Regular.ttf)添加到数组中
    3. 重新编译项目即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 10:05:21