我在Heroku上一直收到这样的错误:“错误:找不到模块‘模型’”。我在用Node.JS,我在用this Node.JS project。
由于长度的原因,我从Heroku和put them in a gist复制了日志。
以下是摘录:
2013-08-27T12:56:27.792568+00:00 app[web.1]: module.js:340
2013-08-27T12:56:27.791930+00:00 app[web.1]:
2013-08-27T12:56:27.792873+00:00 app[web.1]: throw err;
2013-08-27T12:56:27.792873+00:00 app[web.1]: ^
2013-08-27T12:56:27.794658+00:00 app[web.1]: at Function.Module._load (module.js:280:25)
2013-08-27T12:56:27.794658+00:00 app[web.1]: Error: Cannot find module 'models'
我在Heroku上设置了我的配置,设置了mongolab mongodb,设置了config val MONGO_URL,并将NODE_ENV设置为production。
您可以找到站点here。
有人知道这是怎么回事吗?谢谢你的帮助!
发布于 2013-08-29 02:32:54
您需要将NODE_PATH=lib
设置为heroku的配置变量。
除了node_modules
目录,NODE_PATH
告诉节点在哪里可以找到模块。
此外,您还需要告诉应用程序在生产环境中读取环境变量。
所以..。
$ heroku config:set NODE_ENV=production
$ heroku config:set NODE_PATH=lib
不需要修改heroku部署的任何文件。
发布于 2013-08-28 23:08:04
在package.json的"dependencies“属性中缺少"models”。(我查看了github代码库)。
编辑:对不起,看起来您正在尝试使用/lib/models/文件夹下的模块。因此,在这一行https://github.com/gravityonmars/nodejs-starter/blob/master/index.js#L20中,您可以这样做:
require(‘./lib/model’)(App);
发布于 2018-08-03 04:34:51
您只需重新安装模型即可。
执行npm install models --save
,然后将您的应用程序重新部署到Heroku。
这应该可以解决您的问题。
https://stackoverflow.com/questions/18466943
复制相似问题