将我的 JAVA (jar) 程序 运行 保存在 Heroku 上
Keeping my JAVA (jar) program running on Heroku
我在 Java 中制作了一个机器人,当我 运行 命令时它运行良好:
heroku run nohup java -jar bot.jar
但是,在 24 小时后,Heroku 会因为他们的 Dyno 政策而关闭它。所以,我想制作一个 Procfile 以便它在每次再次激活时执行上面的命令。
我尝试将以下命令放入 Procfile:
worker: java -jar bot.jar
worker: nohup java -jar bot.jar
我什至制作了一个 run.sh 文件,其中包含:
#!/bin/bash
nohup java -jar bot.jar
为了制作一个 Procfile 具有:
worker: sh run.sh
可悲的是,none 有效,因为每次 Dyno 执行 Procfile(在我通过 git 推送它的新版本之后) ,机器人永远不会复活。日志显示:
2017-06-07T13:17:33.651806+00:00 app[api]: Starting process with command `sh run.sh` by XXXX
2017-06-07T13:17:37.958327+00:00 heroku[run.2087]: State changed from starting to up
2017-06-07T13:17:37.948696+00:00 heroku[run.2087]: Awaiting client
2017-06-07T13:17:38.283581+00:00 heroku[run.2087]: Starting process with command `sh run.sh`
2017-06-07T13:17:52.807189+00:00 heroku[run.2087]: Client connection closed. Sending SIGHUP to all processes
2017-06-07T13:17:53.343009+00:00 heroku[run.2087]: Process exited with status 129
2017-06-07T13:17:53.359331+00:00 heroku[run.2087]: State changed from up to complete
2017-06-07T13:24:32.000000+00:00 app[api]: Build started by user XXXX
2017-06-07T13:24:43.090567+00:00 app[api]: Deploy YYYY by user XXXX
2017-06-07T13:24:43.090567+00:00 app[api]: Release v17 created by user XXXX
2017-06-07T13:24:32.000000+00:00 app[api]: Build succeeded
我不知道该怎么做才能让我的机器人从 Procfile 运行。
你能帮帮我吗?
谢谢。
尝试 运行:
$ heroku ps:scale worker=1
这将确保一个工作进程始终 运行。
我在 Java 中制作了一个机器人,当我 运行 命令时它运行良好:
heroku run nohup java -jar bot.jar
但是,在 24 小时后,Heroku 会因为他们的 Dyno 政策而关闭它。所以,我想制作一个 Procfile 以便它在每次再次激活时执行上面的命令。
我尝试将以下命令放入 Procfile:
worker: java -jar bot.jar
worker: nohup java -jar bot.jar
我什至制作了一个 run.sh 文件,其中包含:
#!/bin/bash
nohup java -jar bot.jar
为了制作一个 Procfile 具有:
worker: sh run.sh
可悲的是,none 有效,因为每次 Dyno 执行 Procfile(在我通过 git 推送它的新版本之后) ,机器人永远不会复活。日志显示:
2017-06-07T13:17:33.651806+00:00 app[api]: Starting process with command `sh run.sh` by XXXX
2017-06-07T13:17:37.958327+00:00 heroku[run.2087]: State changed from starting to up
2017-06-07T13:17:37.948696+00:00 heroku[run.2087]: Awaiting client
2017-06-07T13:17:38.283581+00:00 heroku[run.2087]: Starting process with command `sh run.sh`
2017-06-07T13:17:52.807189+00:00 heroku[run.2087]: Client connection closed. Sending SIGHUP to all processes
2017-06-07T13:17:53.343009+00:00 heroku[run.2087]: Process exited with status 129
2017-06-07T13:17:53.359331+00:00 heroku[run.2087]: State changed from up to complete
2017-06-07T13:24:32.000000+00:00 app[api]: Build started by user XXXX
2017-06-07T13:24:43.090567+00:00 app[api]: Deploy YYYY by user XXXX
2017-06-07T13:24:43.090567+00:00 app[api]: Release v17 created by user XXXX
2017-06-07T13:24:32.000000+00:00 app[api]: Build succeeded
我不知道该怎么做才能让我的机器人从 Procfile 运行。 你能帮帮我吗?
谢谢。
尝试 运行:
$ heroku ps:scale worker=1
这将确保一个工作进程始终 运行。