Java 如何在屏幕内启动时运行.jar文件(Ubuntu 12.04)

Java 如何在屏幕内启动时运行.jar文件(Ubuntu 12.04),java,ubuntu,Java,Ubuntu,启动时,我们的服务器需要启动Teamspeak和Teamspeak机器人。第一部分有效,teamspeak总是开始,从来都不是问题。 但是,teamspeak机器人永远不会启动,屏幕会话也不会创建 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"

启动时,我们的服务器需要启动Teamspeak和Teamspeak机器人。第一部分有效,teamspeak总是开始,从来都不是问题。 但是,teamspeak机器人永远不会启动,屏幕会话也不会创建

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.
sleep 2
su teamspeak -c 'screen -d -m -S ts3 /home/teamspeak/teamspeak/ts3server_minimal_runscript.sh inifile=ts3server.ini'
sleep 2
su teamspeak -c 'screen -d -m -S tsbot /usr/bin/java -jar /home/teamspeak/jts3servermod/JTS3ServerMod.jar'
exit 0
如上所述,teamspeak在自己的屏幕会话中以应有的方式启动。但是.jar文件不存在,屏幕会话也不存在


有人能告诉我哪里出错了吗?

你不应该这样运行脚本。我不确定出了什么问题,但我肯定会编写一个sysv/upstart脚本来实现这一点

如果命令退出,屏幕将退出。您是否尝试过从shell以交互方式运行该java命令?