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

Heroku部署Node.js项目报MODULE_NOT_FOUND错误求助

问题排查与解决方案

报错MODULE_NOT_FOUND的触发点在db.js的依赖加载阶段,而非你之前调整的启动路径,你可以按照以下优先级排查:

  • 第一优先级检查/src/config/config.json是否提交到代码仓库
    大部分开发者会将配置目录加入.gitignore规则,导致Heroku部署时拉取不到该文件,直接触发找不到模块的报错。如果你是出于安全考虑不想提交配置文件,可以直接删除db.js里读取本地配置的逻辑,全量使用Heroku环境变量配置Sequelize即可。
  • 检查生产依赖是否完整
    确认sequelize、mysql2两个依赖都在package.json的dependencies字段下,而非devDependencies。Heroku默认部署时不会安装开发依赖,如果你之前安装时加了--save-dev参数,就会出现生产环境找不到模块的问题,执行以下命令修正即可:
    npm install sequelize mysql2 --save
    
  • 你的Procfile配置本身没有问题,web: node src/index.js的写法是合法的,不需要再调整启动路径。
  • 若以上步骤都未解决,可直接在Heroku控制台进入远程终端,执行ls /app/src确认所有部署文件是否完整,再手动执行node src/index.js查看完整报错信息,即可精准定位缺失的模块。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.10 21:00:02