Windows10下已装模块运行nodemon+babel仍报MODULE_NOT_FOUND错误如何解决
故障根因
报错提示Node在C:\Windows\System32\node_modules路径下寻找babel相关模块,而非你的项目工作目录,这是Windows环境下调用项目局部安装的npm可执行依赖的常见问题:终端默认不会优先加载当前项目node_modules/.bin下的可执行文件,导致nodemon调用的babel-node指令被定向到系统目录查找模块,最终匹配失败。
修复方案
任选以下一种方案执行即可:
- 方案一:通过npm scripts启动(最推荐)
打开项目根目录的package.json文件,新增scripts配置:
后续直接执行{ "scripts": { "dev": "nodemon --exec babel-node ./index.js" } }npm run dev即可启动。npm执行scripts指令时会自动将项目局部依赖的可执行文件路径加入运行时环境变量,不会出现路径匹配错误。 - 方案二:手动指定babel-node的局部路径
不需要修改配置文件,直接在终端执行对应启动命令即可:
如果你用CMD终端:
如果你用Git Bash/WSL终端:nodemon --exec .\node_modules\.bin\babel-node.cmd index.jsnodemon --exec ./node_modules/.bin/babel-node index.js - 方案三:全局安装依赖(不推荐)
直接全局安装所需的所有依赖,之后就可以在任意路径直接调用指令:npm install -g nodemon @babel/core @babel/cli @babel/node注意:全局安装会导致不同项目的依赖版本出现冲突,仅建议单项目固定使用的场景选择。
内容的提问来源于stack exchange,提问作者Lagnajeet jena
相关产品推荐
相关产品推荐

