执行sudo npm run serve报ENOENT错误,求解决方案(NPM 8.18.0)
解决
npm run serve 报错 ENOENT 找不到 package.json 的问题 核心原因
报错提示的ENOENT本质是当前执行命令的目录下不存在package.json文件,npm run命令需要读取该文件中的scripts配置才能执行对应命令。
具体解决步骤
确认当前工作目录是否正确
执行pwd查看当前所在路径,对比报错中的路径/home/00/00/00,确认是否处于你创建的默认应用的根目录(即包含package.json的文件夹)。如果不是,使用cd命令切换到项目根目录后再执行npm run serve。检查项目创建是否完整
如果切换目录后仍找不到package.json,说明之前的项目创建过程可能存在异常,重新创建项目:
以Vue项目为例,执行vue create my-app(其他框架请使用对应官方创建命令),创建完成后进入项目目录cd my-app,再执行npm run serve。避免不必要的
sudo使用
尽量不要用sudo执行npm命令,这会修改文件权限,后续可能引发更多权限问题。若遇到权限报错,推荐使用nvm管理Node版本,或调整npm全局安装目录的权限,而非依赖sudo。缓存清理的正确方式(非必要)
你之前使用的npm cache clear在npm 5+已被废弃,正确清理缓存的命令是npm cache clean --force,但此问题与缓存无关,无需执行。
内容的提问来源于stack exchange,提问作者itmemilan
相关产品推荐
相关产品推荐

