是否可以将原始 Java 网络应用程序部署到 Heroku?

问题描述

这里的用户非常缺乏经验...请耐心等待!

我从不再在公司工作的人那里继承了 Heroku 应用程序的维护。必须重新部署应用更新可能是一年一次的事件,现在我们来了。

我的说明包括构建一个包含我的应用程序的独立 jar 文件,然后将其部署到 Heroku。具体来说,此过程是通过以下命令使用 Heroku CLI:

heroku deploy:jar webapp.jar -a my-app

很简单。除了他有自己的 Heroku CLI 实例,当我去下载自己的副本时,似乎 deploy 命令不再存在!是这种情况吗?这是一个已弃用的命令吗?我是否需要通过弄清楚如何设置 git 存储库来部署它的过程? (实际上,我们正在使用 git 来管理此应用程序的源代码,但它位于我们公司的防火墙后面,因此我不确定为 Heroku 设置它有多么实用/困难)。在投入大量时间重新发明部署过程之前,我只是想确保我没有遗漏一些简单的东西。谢谢。

解决方法

最流行的机制确实是将代码从 git 推送到 Heroku,提供必要的文件(即 profcile)来部署运行时。
另一种方法是创建一个 Docker 映像并将其推送到 Heroku Registry(在您的情况下需要更多的返工)。

参考Deploy with Git,防火墙应该不是问题,因为Heroku不会访问你的代码,但是你需要执行推送(git push heroku master

,

我必须回答我自己的问题,因为我能够找到解决方案。

事实证明,heroku CLI 有一个插件可以提供部署命令。运行 heroku plugins:install java 将安装在 heroku CLI 中提供部署命令的插件。

有关详细信息,请参阅 https://devcenter.heroku.com/articles/deploying-executable-jar-files