赞
踩
该过程默认已经安装jdk。java程序启动方式有多重,列出如下几种。
1、java -jar demo.jar
使用该命令程序在控制台输出启动,当按下Ctrl+C和关闭终端时,程序会终止。输出日志,在后面加上 > 文件名,如:java -jar demo.jar > demo.log
2、nohup java -jar demo.jar
该命令会后台启动,不打印启动过程,但和上面的一样,关闭终端和按下Ctrl+C时,程序终止。使用该命令会将日志重定向到默认的nohup.out文件中,如果修改指定文件,则在命令后面加上 >> 文件名,即 java -jar demo.jar > demo.log 。如下:
3、java -jar demo.jar &
该命令依旧会在控制台输出启动过程,但按下Ctrl+C和关闭终端('关闭终端不是关闭服务器')时,程序依然运行,并不会关闭。输出日志文件,在命令后面加上 > 文件名即可。即:java -jar demo.jar & > demo.log
4、nohup java -jar demo.jar &
该命令运行不打印启动过程,按下Ctrl+C和关闭终端时,程序依然运行。指定日志文件命令为 nohup java -jar demo.jar >> demo.log &.
5、设置java程序开机自启,首先创建文件,并赋权限 chmod +x demo.sh。
# vim /root/develop/demo.sh
#!/bin/bash
export JAVA_HOME="/root/jdk"
export PATH=$PATH:$JAVA_HOME/bin
nohup java -jar /root/develop/demo-0.0.1-SNAPSHOT.jar >> /root/develop/logs/demo.log &
6、注册服务
#vim /etc/systemd/system/demo.service
[Unit]
Description=Java test service
After=network.target
[Service]
Type=forking
ExecStart=/bin/bash /root/develop/demo.sh
ExecStop=/bin/kill -s QUIT $MAINPID
[Install]
WantedBy=multi-user.target
7、设置服务
# systemctl daemon-reload
# systemctl start demo.service
# systemctl enable demo.service
# systemctl status demo.service
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。