栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java服务配置开机自启<CentOS 7>

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java服务配置开机自启<CentOS 7>

创建开始和结束脚本

在你的jar目录下创建两个脚本

touch start.sh
chmod +x start.sh

touch stop.sh
chmod +x stop.sh

这是启动java服务和停止java服务的两个脚本,具体命名可以自己写自己的
start.sh内容

#!/bin/bash

# 这里是JDK安装的环境变量,自己改成自己的路径即可
export JAVA_HOME=/usr/jdk1.8.0_211
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin

echo "************ KILL Java Service  Will  Begin **************"
#得到对应服务的进程号 关闭tomcat
str=`ps -ef | grep xxxxx你的jar文件xxxxx.jar | grep -v "grep"|awk '{print $2}'`
kill -9 $str
if [ "$?" -eq 0 ]; then
	echo "killed pid is "$str
    echo "kill success"
else
    echo "kill failed"
fi
echo "************ KILL Java Service  Will  End**************"
 
nowDate=`date +"%Y-%m-%d"`

# 跳转到jar存放的目录
cd /xx/xx/xxxx
# 执行挂起命令
nohup java -jar xxxxx你的jar文件xxxxx.jar &



# 跳转到jar存放的目录
cd /xx/xx/xxxx
#休眠5秒自动删除nohup.out文件
sleep 5
rm -rf nohup.out
nowstr=`ps -ef | grep  personloger-boot-oa-0.0.1-SNAPSHOT.jar  | grep -v "grep"|awk '{print $2}'`
#打印出现在新的进程号
echo "now pid is "$nowstr
echo "************ Personloger-OA is  Running... **************"

stop.sh 的内容

#!/bin/bash

echo "************ KILL Java Service  Will  Begin **************"
#得到对应服务的进程号 关闭tomcat
str=`ps -ef | grep xxxxx你的jar文件xxxxx.jar | grep -v "grep"|awk '{print $2}'`
kill -9 $str
if [ "$?" -eq 0 ]; then
	echo "killed pid is "$str
    echo "kill success"
else
    echo "kill failed"
fi
echo "************ KILL Java Service  Will  End**************"

注意:一定要给start和stop进行权限修改 chmod +x xxx.sh

编写注册服务
vim /usr/lib/systemd/system/somejar.service

名称自定义

Description=可以自定义描述
After=network.target  
 [Service]
Type=forking
ExecStart=刚刚写的那个start #启动服务脚本的绝对路径
ExecStop=刚刚写的那个stop #停止服务脚本的绝对路径.
PrivateTmp=true
[Install]
WantedBy=multi-user.target

将服务设为开机启动
systemctl enable somejar.service
# 设置完后重启
reboot
常用命令
systemctl start somejar.service #启动 服务
systemctl stop somejar.service  #停止 服务
systemctl status somejar.service  #查看 服务当前的运行状态

systemctl enable somejar.service  #开机启动 服务
systemctl disable somejar.service  #取消开机启动 服务
systemctl list-unit-files;   #查看当前服务(是否开机启动等)状态

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/305477.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号