执行npm start运行React应用报ENOENT找不到package.json错误
问题现象
执行npm start启动React应用时抛出错误,完整报错信息如下:
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead. npm ERR! code ENOENT npm ERR! syscall open npm ERR! path D:\REACT/package.json npm ERR! errno -4058 npm ERR! enoent ENOENT: no such file or directory, open 'D:\REACT\package.json' npm ERR! enoent This is related to npm not being able to find a file. npm ERR! enoent npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\claud\AppData\Local\npm-cache\_logs\2022-06-06T19_01_17_681Z-debug-0.log
错误根因
核心报错为ENOENT,本质是npm执行命令时,在当前工作路径D:\REACT下找不到React项目必需的package.json配置文件。开头的--global/--local参数弃用警告是高版本npm的兼容提示,和本次启动失败无关,无需优先处理。
修复步骤
- 校验当前终端工作目录:在Windows终端执行
dir命令,查看当前目录下的文件列表,如果不存在package.json、src文件夹、public文件夹这几个React项目核心文件/目录,说明你当前停留在项目的外层父目录,没有进入真正的项目文件夹,这是90%以上同类报错的诱因。 - 切换到正确的项目路径:如果你创建项目时执行的是
npx create-react-app my-app这类命令,需要先执行cd my-app进入工具自动生成的项目子目录,确认目录下存在package.json后,重新执行npm start即可正常启动项目。 - 路径正确仍报错的处理:如果确认当前处于项目根目录还是报同样的错,说明
package.json文件意外丢失或损坏。从代码仓库拉取的项目先确认仓库是否提交了该配置文件;本地新建项目可以执行npm init -y重新生成基础配置,再重新安装React相关依赖后重试启动。
内容的提问来源于stack exchange,提问作者Copacel Claudiu
相关产品推荐
相关产品推荐

