0

我有一个在嵌入式 tomcatjava -jar app.jar上运行的 spring boot 应用程序,它在远离我的工作办公室的服务器上运行,并且我没有任何 ssh 或其他访问该服务器的权限。所以当我想安装和运行更新版本的应用程序时,我应该去服务器位置,物理连接到服务器,然后安装和运行更新版本。

有没有办法在不去服务器位置的情况下运行较新版本的应用程序?例如,将较新的 jar 文件上传到我正在运行的应用程序中,并自行更新它。

笔记

由于 IP 和端口限制,我无权访问服务器,也无法使用和运行任何持续交付工具,如 jenkins 或其他工具。

4

2 回答 2

2

不久前我做了类似的事情,效果很好。

因此,您可以在服务器上创建一个超级小应用程序(小到“永远”不需要更新)并让它监视版本,当有新版本可用时,它可以停止实际进程并使用新 jar 重新启动它文件。

不幸的是,我没有该入门应用程序的代码,但编写一个适合您需求的应用程序应该不会花那么长时间

于 2019-08-07T13:50:52.497 回答
1

为什么不将 Tomcat 安装到服务器并使用它的管理 GUI 来部署较新版本的应用程序?这是一种非常古老的时尚,但效果很好。您需要在源代码中修改的唯一一件事是替换 pom.xml 中的packagingfrom jarto war,以便您可以通过 Tomcat Manager 部署它。这是管理器 GUI 的样子: 在此处输入图像描述

您可以在此处了解有关 Tomcat 管理器的更多信息

于 2019-08-07T13:57:24.763 回答