通过 rc.local 在非无头模式下自动启动 jar

通过 rc.local 在非无头模式下自动启动 jar

我想要实现的目标

我想在每次登录/电脑启动时启动 Java jar。因此我使用 rc.local。我重新激活了它,以便它在/etc/rc.local启动时执行脚本(测试过,服务运行良好)。


问题

我想启动 jar,我收到了HeadlessExceptionException in thread "main" java.awt.AWTError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.

我正在使用以下脚本(rc.local 的内容)

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

java -jar -Djava.awt.headless=false /home/myusernamehere/path/to/jar/theJar.jar
exit 0

当我删除-Djava.awt.headless=false参数时,我收到 HeadlessException。

那么,如何解决这个问题?还有其他好方法可以启动 jar 吗(作为 root 用户) 在系统启动时?


其他规格

  • Ubuntu 版本:16.10
  • Java版本:openjdk版本“1.8.0_111”

相关内容以及我尝试过的内容

相关内容