You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

安装nodemon遇EventEmitter内存泄漏警告及命令未识别问题求助

嘿,我碰到过类似的问题,尤其是在老版本的Node.js和npm环境下,给你梳理下原因和解决办法:

原因分析

  • 系统环境变量缺失:全局安装的nodemon可执行文件存放在npm的全局bin目录里,如果这个目录没被加到Windows的PATH环境变量中,系统根本找不到这个命令。
  • 老版本npm的bug:你用的npm 6.10.2和Node.js 12.9.0都是比较旧的版本,存在已知的全局安装时的事件监听泄漏问题(就是你看到的MaxListenersExceededWarning),这个bug可能导致安装不完整,或者没正确把命令注册到系统路径里。
  • 管理员权限的路径差异:用管理员权限安装时,npm可能会把包装到管理员账户的全局路径,而你的普通用户账户的PATH没包含这个路径,自然识别不了命令。

解决办法

方法一:配置npm全局路径到环境变量

  1. 打开普通权限的命令提示符,执行命令获取npm全局安装前缀:
    npm config get prefix
    
    你会得到类似C:\Users\你的用户名\AppData\Roaming\npm的路径(这是默认路径)。
  2. 打开系统环境变量设置:右键「此电脑」→「属性」→「高级系统设置」→「环境变量」。
  3. 在「系统变量」里找到PATH,点击「编辑」→「新建」,把刚才复制的路径粘贴进去,一路点击「确定」保存。
  4. 关闭所有命令提示符窗口,重新打开一个,输入nodemon试试能不能用。

方法二:修复npm后重新安装

老版本npm的bug可能是根源,先修复npm再重装:

  1. 以管理员权限打开命令提示符,更新npm到6.x分支的最新稳定版(因为Node12只支持到npm6):
    npm install npm@6 -g
    
  2. 清理npm缓存,避免残留问题:
    npm cache clean --force
    
  3. 重新全局安装nodemon:
    npm install nodemon -g
    
  4. 安装完成后,打开新的命令提示符测试nodemon命令。

方法三:本地安装(临时替代方案)

如果全局安装始终搞不定,可以在项目里本地安装:

  1. 进入你的项目根目录,执行:
    npm install nodemon --save-dev
    
  2. 修改项目的package.json,在scripts里加一行:
    "scripts": {
      "dev": "nodemon 你的入口文件名.js"
    }
    
  3. 之后运行npm run dev就能用nodemon启动项目了。

内容的提问来源于stack exchange,提问作者Sariful

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 22:27:45