【问题标题】:Heroku missing moduleHeroku 缺少模块
【发布时间】:2015-01-26 17:53:36
【问题描述】:

我正在尝试将一个简单的 node.js 服务器部署到 Heroku,但一直遇到此错误:

Error: Cannot find module 'morgan'

我正在使用 morgan 进行一些 HTTP 日志记录,我在 devDependencies 下的 package.json 中有 morgan(以及许多其他)

"devDependencies": {
    "morgan": "~1.5.0"
}

我可以在本地执行 npm install 并毫无问题地启动服务器,但是当我部署到 Heroku 时,一旦启动服务器,我就会一直遇到该错误。

有什么我忘记了吗?

【问题讨论】:

    标签: node.js heroku npm


    【解决方案1】:

    默认情况下 Heroku 执行 npm install --production 避免安装 devDependencies,引用 Heroku 的字面文档。

    Heroku 节点 buildpack 运行 npm install --production,它不会在你的 package.json 文件中安装 devDependencies。如果您希望在部署到 Heroku 时安装开发依赖项,您应该将构建依赖项(例如 grunt 插件)从 devDependencies 移动到 package.json 中的依赖项。

    如果您使用 Morgan 模块,则需要将其移至“依赖项”。

    来源:https://devcenter.heroku.com/articles/nodejs-support

    【讨论】:

    • 谢谢,我完全忽略了这一点。
    猜你喜欢
    • 2022-01-18
    • 2021-10-02
    • 2015-01-08
    • 2014-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多