执行npm run eject报错Exit code 1,React Native依赖安装失败求助
问题根源与解决方案
首先明确:你的问题核心是Node.js版本过低,不是yarn版本的问题,我们一步步拆解:
1. 依赖安装失败的核心原因
你看到的@babel/core@7.0.0-beta.49要求Node版本>=6.9.0是关键提示——你的Node.js版本是6.2.1,远低于依赖要求的最低版本,这直接导致yarn无法完成依赖安装。create-react-native-app底层依赖的Babel版本对Node版本有明确限制,旧版本Node不支持它的语法和功能,所以安装必然失败。
2. npm run eject失败的连锁反应
因为第一步的依赖安装没完成,你的项目环境是不完整的——缺少很多核心依赖包。eject操作需要读取项目的完整依赖配置、调用相关工具来生成原生项目文件,依赖缺失的情况下,它自然会报错Eject failed with exit code 1。
具体解决步骤
- 升级Node.js版本:
推荐使用nvm(Node版本管理器)来无痛升级,避免系统级版本冲突:- 安装nvm后,执行
nvm install 8.17.0(这是适配该Babel版本的LTS稳定版,你也可以选择>=6.9.0的其他LTS版本) - 切换到新版本:
nvm use 8.17.0 - 验证版本:
node -v,确认显示的版本>=6.9.0
- 安装nvm后,执行
- 重新创建项目:
删除之前创建的myappname文件夹,重新执行create-react-native-app myappname,此时yarn应该能顺利完成依赖安装 - 执行eject操作:
进入项目目录后,运行npm run eject,选择a regular react native project,这次应该能成功完成eject
补充说明
如果升级Node后仍然遇到yarn相关问题,再考虑检查yarn版本(比如升级到当时的稳定版),但根据你的错误提示,Node版本是首要解决的问题。
内容的提问来源于stack exchange,提问作者Morton
相关产品推荐
相关产品推荐

