如何在AWS上继续运行Java应用程序?

问题描述

我是Java新手。通过克隆此存储库(https://github.com/hapifhir/hapi-fhir-jpaserver-starter),我在AWS上运行了hapi fhir服务器

我使用以下命令运行服务器:“ sudo mvn -e jetty:run”

-

我的问题:

一旦我退出AWS,我的服务器就会停止。当我通过.pem文件登录到我的AWS实例时,使用ubuntu 18.04 LTS和Nginx服务器运行的AWS实例。

谢谢

解决方法

作为守护程序运行:

"sudo mvn -e jetty:run &"

&使命令在后台运行。

来自man bash:

如果命令由控制操作员&终止,则外壳 在子shell中在后台执行命令。壳做 不等待命令完成,返回状态为0。

,

在AWS上执行或设置Java应用程序的理想方法是通过在Linux中设置systemd脚本或init来将其作为守护程序运行。

在您的情况下,关闭终端后应用程序将立即停止,因为您是在没有nohup命令的情况下在终端中启动它的,因此当终端关闭时,由于控制线程已停止,应用程序也将停止。如果您只想在一个单独的后台线程上启动该应用程序,而不必经历将其实际设置为Linux中的服务的麻烦,则可以使用nohup命令(设置systemd将Java应用程序注册为服务是首选方法):

nohup java -jar yourjarName &

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...