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

Mac端初始化React Native iOS项目报ERESOLVE依赖冲突报错求助

React Native init 触发ERESOLVE依赖冲突调试方案

报错核心信息

Mac环境执行npx react-native init A2初始化iOS端RN项目时抛出依赖解析错误:

  • 流程提示需安装react-native@0.69.0,确认后npm报ERESOLVE冲突
  • 本地残留react-native@0.68.2依赖@react-native-community/cli@^7.0.3,与新版本要求的react@18.0.0 peer依赖不兼容
  • 冲突报告路径:/Users/student/.npm/eresolve-report.txt
  • 完整运行日志路径:/Users/student/.npm/_logs/2022-06-25T16_09_36_906Z-debug-0.log

调试方案(按优先级排序)

1. 清理缓存与残留依赖(无副作用,优先尝试)

该类冲突绝大多数是npx/npm本地缓存了旧版本RN初始化包、全局残留旧版本RN依赖导致,按顺序执行命令清理:

# 清理npx缓存,避免拉取本地缓存的旧初始化脚本
npx clear-npx-cache
# 强制清理npm全量缓存
npm cache clean --force
# 卸载全局可能存在的旧版RN CLI
npm uninstall -g react-native react-native-cli @react-native-community/cli
# 删除当前目录下残留的半成品项目文件夹、node_modules
rm -rf A2 node_modules

清理完成后重新执行初始化命令即可:

npx react-native init A2

2. 指定兼容版本初始化

react-native@0.69.0是首个适配React 18的大版本,若本地Node/npm版本较低无法适配新依赖规则,可以指定经过验证的稳定低版本初始化,无依赖冲突问题:

npx react-native init A2 --version 0.68.2

3. 临时绕过依赖校验(应急使用,存在兼容风险)

若以上方案执行后仍报错,可以追加参数跳过peer依赖校验完成初始化,对应npm给出的官方临时方案:

npx react-native init A2 -- --legacy-peer-deps

注意:该参数会强制npm忽略peer依赖版本匹配要求,初始化完成后如果运行时报依赖相关错误,需要手动对齐package.json中react与react-native的版本对应关系。

辅助排查手段

如果上述方案均无效,可以直接打开npm生成的冲突报告与日志,定位具体冲突的残留包路径手动删除:

  • 打开冲突报告:执行open /Users/student/.npm/eresolve-report.txt
  • 打开完整调试日志:执行open /Users/student/.npm/_logs/2022-06-25T16_09_36_906Z-debug-0.log

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 06:12:22