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

Node.js生产项目通过pm2启动失败,报MODULE_NOT_FOUND错误

解决PM2启动Node.js项目报MODULE_NOT_FOUND错误

问题定位

从错误日志可明确核心问题:

  • 错误类型:MODULE_NOT_FOUND(模块未找到)
  • 触发位置:/DATA/rabbitmq/util/tools.js文件第2行第19位的require语句
  • 调用链路:index.js → loadEnv.js → tools.js,最终在tools.js中无法找到指定依赖模块

排查与修复步骤

  1. 检查tools.js的依赖引入
    打开/DATA/rabbitmq/util/tools.js,定位第2行的require代码,逐一确认:

    • 模块名称拼写是否准确(Node.js对模块名/路径大小写敏感)
    • 本地文件模块:相对路径是否正确(需基于tools.js所在目录,比如./utils或../config,避免绝对路径写错)
    • npm第三方模块:确认该模块是否已安装
  2. 验证依赖安装状态
    进入项目根目录/DATA/rabbitmq,执行命令检查目标模块:

    npm list 模块名称
    

    若提示模块不存在,执行生产环境安装:

    npm install 模块名称 --production
    
  3. 确认PM2启动工作目录
    避免因工作目录错误导致相对路径解析失败:

    • 查看当前PM2应用配置:
      pm2 show index
      
    • 若工作目录不符,删除旧应用后重新指定目录启动:
      pm2 delete index
      pm2 start index.js --name index --cwd /DATA/rabbitmq
      
  4. 清理PM2缓存并重启
    缓存异常可能导致模块加载失败,执行以下操作:

    pm2 delete index
    pm2 flush
    pm2 start index.js --name index
    

修复验证

执行命令确认进程状态:

pm2 status

若进程状态显示online,再查看日志确认无错误:

pm2 logs index

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 20:34:55