Laravel项目运行npm run dev提示找不到npm-cli.js模块如何解决
错误根因
该报错为项目本地node_modules目录下缺失npm核心执行文件,由你之前使用--force强制安装依赖导致依赖树损坏、部分核心依赖被覆盖/缺失导致。
解决步骤
- 第一步:删除项目根目录下的损坏依赖文件,包括
node_modules文件夹、package-lock.json文件 - 第二步:清理npm全局缓存,执行命令:
npm cache clean --force
- 第三步:校验全局npm是否正常,执行命令:
npm -v
如果该命令也抛出报错,说明全局npm环境已损坏,直接下载Node.js LTS版本覆盖安装即可,安装完成后重新执行上述命令校验正常即可。
- 第四步:匹配Node.js版本和当前Laravel版本要求:
- Laravel 9.x及以上版本要求Node.js >= 16.x
- Laravel 8.x及以下版本要求Node.js >= 14.x
如果版本不匹配请先更换对应Node.js版本再进行后续操作。
- 第五步:回到项目根目录重新执行依赖安装,不要加
--force参数:
npm install
- 第六步:执行启动命令测试:
npm run dev
补充排查点
如果执行完上述步骤仍然报错,检查package.json中的scripts配置,确认没有手动指定调用本地node_modules下的npm路径,默认Laravel脚手架的dev启动脚本不会包含此类配置,如有修改请恢复为默认配置即可。
内容的提问来源于stack exchange,提问作者Julian Maulana
相关产品推荐
相关产品推荐

