java程序自启动_linux设置java项目开机自启动

本文详细介绍了Java程序的多种启动方式,包括在控制台直接启动、使用nohup命令、使用&符号后台运行等,以及如何通过设置开机自启和注册服务确保程序在系统启动时自动运行。同时,还讲解了如何管理和重定向日志输出,确保程序的稳定运行和监控。
摘要由CSDN通过智能技术生成

该过程默认已经安装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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值