Heroku缺less模块
我试图部署一个简单的node.js服务器到Heroku,但继续运行到这个错误:
Error: Cannot find module 'morgan'
我使用morgan
做一些HTTP日志logging,我有我的package.json
devDependencies(以及许多其他)
"devDependencies": { "morgan": "~1.5.0" }
我可以在本地执行npm install
,并且无任何问题地启动服务器,但是当我部署到Heroku时,一旦启动服务器,就会一直运行该错误。
有什么我忘了吗?
默认情况下Heroku执行npm install --production
避免安装devDependencies,引用Heroku的字面文档。
Heroku node buildpack运行npm install –production,它不会在你的package.json文件中安装devDependencies。 如果您希望在部署到Heroku时安装开发依赖项,则应该将您的构build依赖关系(如grunt插件)从devDependencies移动到package.json中的依赖项。
如果您使用Morgan模块,则需要将其移至“依赖关系”。
来源: https : //devcenter.heroku.com/articles/nodejs-support