如何在没有控制台的情况下运行java程序

Ram*_*esh 4 java command-line headless

即使终端关闭....我需要运行一个java程序....在服务器....

bak*_*kal 5

在Unix和GNU/Linux系统上,您可以nohup像这样运行程序,假设它是一个jar:

nohup java -jar program.jar &
Run Code Online (Sandbox Code Playgroud)

要将程序的输出运行到文本文件中以便以后可以查看它,您可以执行以下操作:

nohup java -jar program.jar > program.log &
Run Code Online (Sandbox Code Playgroud)

有些软件包可以将Java程序包装到服务中,这比裸java进程更易于管理.

您可能还想使用"进程包装器"(可能是Launch4J?)为您的进程提供一个有意义的名称,否则您的所有Java程序都将显示java在进程列表中,这不是非常具有说明性的.


Cra*_*der 0

您想使用无头模式。这将导致任何尝试与屏幕、键盘、鼠标等通信的调用失败,但也意味着您不需要 X 服务器(在 Unix 上)或访问控制台(在 Windows 上)。