歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux管理 >> Linux服務

啟動Java程序為Linux服務

不想用別人封裝的程序,比如wrapper service。用自己的腳本搞定。

1.創建一個start.sh腳本,裡面運行java程序:

  1. -UU-:----F1 master_rest 18% L25 (Shell-script[sh])------------------------------------------------------------------------------------------------------------------------
  2. #!/bin/bash
  3. PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
  4. CARRIER_HOME=/home/dist/carrier
  5. export JAVA_HOME=/usr/jdk1.6
  6. export PATH="$JAVA_HOME/bin:$PATH"
  7. java -server -cp $CARRIER_HOME/site/master/rest/dependency/ -jar $CARRIER_HOME/site/master/rest/master-1.0.jar &

2.在/etc/init.d/中創建一個service腳本,比如master_rest

內容如下:

  1. # Short-Description: master
  2. # Description: master rest service
  3. ### END INIT INFO
  4. . /lib/lsb/init-functions
  5. PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
  6. CARRIER_HOME=/home/dist/carrier
  7. case "$1" in
  8. start)
  9. log_begin_msg "Starting master rest server"
  10. /bin/bash $CARRIER_HOME/scripts/start.sh >/dev/null 2>&1
  11. log_end_msg 0
  12. ;;
  13. stop)
  14. PID=`ps -ef | grep 'master-1.0.jar' | grep -v grep | awk '{print $2}'`
  15. log_begin_msg "Stopping master rest server"
  16. if [ ! -z "$PID" ]; then
  17. kill -15 $PID
  18. fi
  19. log_end_msg 0
  20. ;;
  21. restart)
  22. $0 stop
  23. $0 start
  24. ;;
  25. *)
  26. log_success_msg "Usage: service master_rest {start|stop|restart}"
  27. exit 1
  28. esac
  29. exit 0

重點注意是 , 這行命令導致終端不會輸出信息。

>/dev/null 2>&1 

Copyright © Linux教程網 All Rights Reserved