React项目执行npm start报错:找不到package.json文件
嘿,我来帮你搞定这个困扰你的npm报错!先看看你遇到的错误信息:
npm ERR! path /Users/dan/package.json
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall open
npm ERR! enoent ENOENT: 没有该文件或目录,打开'/Users/dan/package.json'
npm ERR! enoent 这大概率不是npm本身的问题
npm ERR! enoent 而是npm无法找到对应文件导致的
npm ERR! enoent
npm ERR! 本次运行的完整日志可查看:npm ERR! /Users/dan/.npm/_logs/2018-04-11T...
这个错误的核心就是npm在当前目录找不到package.json文件,下面是几个快速排查和解决的步骤:
检查当前工作目录是否正确
你现在在/Users/dan目录下,但你的React项目应该是在这个目录下的某个子文件夹里对吧?先运行pwd命令确认当前路径,然后用cd 你的项目文件夹名称进入项目根目录,再执行npm start试试。比如你的项目叫my-react-app,就输入cd my-react-app。确认项目是否正确初始化
如果你是手动创建的文件夹而不是用create-react-app初始化的,那你的目录里还没有package.json。可以执行以下步骤:- 确保在项目根目录下,运行
npm init -y快速生成默认的package.json - 安装React项目所需的基础依赖:
npm install react react-dom react-scripts - 打开
package.json,在scripts字段里添加:"start": "react-scripts start"
之后再运行npm start就应该能正常启动了。
- 确保在项目根目录下,运行
排查是否误删了package.json
如果你之前项目里有这个文件但现在找不到了,可以看看回收站有没有恢复的可能;如果用了Git版本控制,也可以通过git restore package.json(如果还没提交删除操作)或者查看历史提交来恢复文件。
内容的提问来源于stack exchange,提问作者helsereet

