Łuk*_*nek 32
有几种方法可以实现这样的目标:
nohup java -server myApplication.jar > /log.txt - 这很简单.它只是将应用程序放在后台.这可行,但这不是一个非常好的方法.init.d常规启动,停止和状态命令中并且需要运行级别.如果需要,我可以提供一个例子.我个人用的解决方案2或3去,如果你需要在未来使用此服务器和/或分发到客户,最终用户等,nohup如果你需要运行的东西,并没有时间去开发更复杂的解决方案是好的问题.
广告2:
许多项目使用的最佳脚本可以在这里找到.
对于Debian/Ubuntu,可以使用基于的非常简单的脚本start-stop-daemon.如果有疑问,/etc/init.d/skeleton可以修改.
#!/bin/sh
DESC="Description"
NAME=YOUR_NAME
PIDFILE=/var/run/$NAME.pid
RUN_AS=USER_TO_RUN
COMMAND=/usr/bin/java -- -jar YOUR_JAR
d_start() {
start-stop-daemon --start --quiet --background --make-pidfile --pidfile $PIDFILE --chuid $RUN_AS --exec $COMMAND
}
d_stop() {
start-stop-daemon --stop --quiet --pidfile $PIDFILE
if [ -e $PIDFILE ]
then rm $PIDFILE
fi
}
case $1 in
start)
echo -n "Starting $DESC: $NAME"
d_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
d_stop
echo "."
;;
restart)
echo -n "Restarting $DESC: $NAME"
d_stop
sleep 1
d_start
echo "."
;;
*)
echo "usage: $NAME {start|stop|restart}"
exit 1
;;
esac
exit 0
Run Code Online (Sandbox Code Playgroud)
&在命令末尾添加a后,您需要做一件至关重要的事情.该过程仍与终端相关联.您需要disown在运行java命令后运行.
java -jar yourApp.jar > log.txt &
disown
Run Code Online (Sandbox Code Playgroud)
现在,您可以关闭终端.
| 归档时间: |
|
| 查看次数: |
45918 次 |
| 最近记录: |