升级Xcode 13后无法运行React Native iOS应用问题求助
Xcode 13 升级后React Native项目构建报错解决方案
错误原因说明
- Legacy Build System的提示为废弃警告,Xcode 13已逐步淘汰旧构建系统,强行使用后续会出现更多兼容性问题,优先使用New Build System解决冲突即可。
- New Build System下的
Multiple commands produce报错,本质是AntDesign.ttf等react-native-vector-icons的字体文件被两个构建步骤同时配置了拷贝到产物目录的规则:一处是手动添加到Copy Bundle Resources的规则,另一处是CocoaPods的[CP] Copy Pods Resources脚本自动生成的拷贝规则,两者冲突导致构建失败。
可行解决方案
步骤1:移除Copy Bundle Resources中的重复字体
- 打开Xcode,选中项目根Target,切换到
Build Phases标签页 - 展开
Copy Bundle Resources分组,找到所有react-native-vector-icons相关的ttf字体文件,全部移除(仅选择Remove Reference,不要点击Move to Trash)
注意:仅删除react-native-vector-icons相关的字体文件,不要误删项目本身的其他资源文件
步骤2:校验Info.plist配置(RN 0.60+版本适用)
- 打开项目Info.plist,找到
Fonts provided by application(即UIAppFonts)数组 - 移除所有手动添加的react-native-vector-icons相关字体条目,RN 0.60+的auto-linking机制会自动注册这些字体,无需手动声明
步骤3:清理缓存重新构建
在项目iOS目录下执行以下命令清理所有缓存:
rm -rf Pods Podfile.lock rm -rf ~/Library/Developer/Xcode/DerivedData/* pod deintegrate pod install
回到Xcode后按Cmd+Shift+K清理构建缓存,选择New Build System重新运行项目即可。
内容的提问来源于stack exchange,提问作者gaurav parkash
相关产品推荐
相关产品推荐

