Heroku 应用程序没有使用正确的节点模块
Posted
技术标签:
【中文标题】Heroku 应用程序没有使用正确的节点模块【英文标题】:Heroku App is Not Using the Right Node Module 【发布时间】:2017-06-10 02:22:32 【问题描述】:我正在尝试在我的 Heroku 应用程序上测试一个节点模块的分支。这是我所做的:
-
分叉了一个节点模块存储库并对代码进行了一些更改。推送到我自己的远程仓库。
在我的 Heroku bash 终端上运行以下命令:
npm install git+https://git@github.com/Nsrose/node_model_updated.git
-
运行 heroku 重启。
这实际上更新了我在 node_modules/ 文件夹下编辑的文件。但是,通过此文件更改修复的错误并没有改变。在 npm install 之前,应用程序说这个错误:
ERROR TypeError: Cannot read property 'channel' of undefined (line 97)
在上面的一系列命令之后,即使在 node_modules/ 下的 heroku 服务器上更新了文件,错误仍然存在。事实上,我现在更改的文件在第 97 行甚至没有任何与“频道”相关的内容。
为什么我的 heroku 应用仍在使用旧的 node_module/ 以及如何强制它更新?
【问题讨论】:
【参考方案1】:要在 heroku 中运行 node.js 应用程序,您需要一个不带扩展名的“Procfile”,在那里您编写命令 heroku 必须运行以使您的应用程序运行,例如,此文件必须是您的主 git 文件夹
web: node app.js
所以在克隆 git 存储库、保存更改并在本地测试之后,您所要做的就是:
git 添加。 git commit -m "消息" git push heroku master我会留下Getting started with Node on Heroku的链接
编辑:您的未定义也可能是代码问题,而不是 heroku 的
【讨论】:
以上是关于Heroku 应用程序没有使用正确的节点模块的主要内容,如果未能解决你的问题,请参考以下文章
使用 grunt、bower、node 模块部署到 heroku