我正在寻找一种在Heroku上托管的Java应用程序中运行Heroku CLI命令的方法。
我希望能够运行heroku pg:backup
heroku pg:restore
等命令
有办法吗?
编辑::我将Heroku CLI添加到了我的应用程序中,现在我正在寻找一种从Java代码中调用heroku命令的方法。
也许您可以使用这样的东西:
ProcessBuilder pb = new ProcessBuilder("/path/to/herokuCLI", "myCommand");
问题是我不知道如何找到正确的路径。
如果您在Heroku上查看应用程序的文件结构,则只能找到.war +一些“配置文件”,这很正常,因为您只向Waroku发起了战争:Procfile system.properties target
此外,我认为这不是正确的方法。
我想避免在纯Java代码中执行备份/还原操作。
毕竟,也许您不能依靠Heroku cmd来完成这项工作。
答案 0 :(得分:2)
您需要将Heroku CLI buildpack添加到您的应用程序中。您可以执行以下操作:heroku buildpacks:add heroku-community/cli
执行完新的构建后,现在就可以从应用程序dynos内部运行CLI命令。您可以在documentation中查看有关此信息的其他信息。