15:05:09 web.1 | started with pid 4888
15:05:10 web.1 |
15:05:10 web.1 | > finext_server@0.0.1 test F:\Projects\finext\server
15:05:10 web.1 | > set NODE_ENV=development && node ./bin/www.js
15:05:11 web.1 |
15:05:12 web.1 | exited with code 5
15:05:12 system | sending SIGKILL to all processes
15:05:12 | app.get('env'): development
这是我得到的输出,就SIGKILL之后执行的代码而言,它是一个小变量。有时,在再次看到命令提示符之前,会执行更多的coide行。
我尝试使用node-foreman,我的应用程序在那里工作正常。所以我猜这与工头有关。我的代码和procfile可以在这里找到:https://github.com/chintanp/finext
这也是该进程无法在heroku上启动的原因。
另一个世界的某个人也有类似的问题。 Express Hello World -- Heroku Foreman Returns Code 5, 'npm start' works just fine
答案 0 :(得分:0)
在Procfile中试试这个:
web: node app.js
答案 1 :(得分:0)
我最近遇到了与运行我的应用程序时完全相同的情况:
领班记录了消息"退出代码5"和#34;将SIGKILL发送到所有进程"。
如果我使用npm(" npm start")或node-foreman(" nf start")而不是foreman,我的应用程序工作正常。
该应用程序还使用forego工作,这是一个由工头作者编写的应用程序。
但几周前,heroku添加了新命令" heroku local",它在幕后使用了forego,并正式取代了工头的使用:
从今天开始,新的Heroku Toolbelt安装将不会随附 领班。 heroku local命令取代了工头。 Heroku Local 利用Forego来完成任务,而且速度更快 更好的跨平台支持。
请注意,heroku现在还说工头是" not officially supported"。
所以解决问题的方法是:
停止使用领班。
下载并安装最新版本的heroku toolbelt。
替换"领班开始"与" heroku local"。
这种方法适用于Windows 7。