RN 0.63.2升级至0.71.2后报'RCTAppDelegate.h'找不到,求最优解
React Native 0.63.2升级到0.71.2后
RCTAppDelegate.h找不到的问题排查与修复 可能的操作失误及对应修复方案
1. Podfile未更新至RN 0.71标准配置
旧项目的Podfile大概率还保留着0.63时期的旧配置,和RN 0.71的新规范不兼容:
- 替换Podfile内容为RN 0.71的标准模板(记得替换成你的项目名称):
require_relative '../node_modules/react-native/scripts/react_native_pods' require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules' platform :ios, '14.0' use_frameworks! :linkage => :static target 'YourAppName' do config = use_native_modules! use_react_native!( :path => config[:reactNativePath], :hermes_enabled => true ) # 保留你项目原有的第三方依赖等配置 end - 删除旧的
Podfile.lock,重新执行pod install
2. Xcode项目残留旧的头文件搜索路径
旧项目可能硬编码了React相关的头文件路径,而RN 0.71的头文件结构已经变更:
- 打开Xcode,进入项目的
Build Settings - 搜索
Header Search Paths,删除所有手动添加的React相关路径(比如../node_modules/react-native/React这类) - 确保保留
$(inherited),Pods会自动管理正确的头文件引入路径
3. 缓存残留导致架构不匹配
旧的Pods缓存、Xcode编译缓存可能导致架构冲突,非Rosetta模式下找不到对应架构的头文件:
- 清理Xcode Derived Data:Xcode → 设置 → 位置 → Derived Data,打开路径后删除当前项目的缓存文件夹
- 清理Pods:执行
pod deintegrate && pod clean,之后重新pod install - 清理RN项目缓存:
rm -rf node_modules && npm install && npx react-native clean
4. 项目架构设置不符合RN 0.71要求
旧项目可能强制设置了单一架构,导致非Rosetta模式下无法匹配:
- 打开Xcode项目的
Build Settings,找到Architectures - 设置
Architectures为Standard Architectures (arm64, x86_64) - 删除
Valid Architectures中的所有配置(RN 0.70+已不再需要这个选项) - 确保
Build Active Architecture Only在Debug模式下为Yes,Release模式下为No
内容的提问来源于stack exchange,提问作者Philippe Maes
相关产品推荐
相关产品推荐

