Java - sh 脚本启动 jar 包等服务 - sh 脚本模板 - 适用于任何类似的服务启动

这篇具有很好参考价值的文章主要介绍了Java - sh 脚本启动 jar 包等服务 - sh 脚本模板 - 适用于任何类似的服务启动。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

sh 脚本模板

该模板,每次运行一次都会 kill 掉原来的服务,然后重新启动 jar 包服务

#!/bin/bash

# 定义Java进程的名称
APP_NAME=your-app-name.jar

# 定义Java进程的日志文件路径
LOG_PATH=/var/log/your-app-name.log

# 定义备份日志文件的目录
BACKUP_DIR=/var/log/backup

# 定义Java进程的启动参数
JAVA_OPTS="-Xmx1024m -Xms1024m -XX:MaxPermSize=256m"

# 检查Java进程是否存在
PID=$(ps -ef | grep ${APP_NAME} | grep -v grep | awk '{print $2}')
if [[ -n ${PID} ]]; then
  echo "Java process is running, PID is ${PID}. Killing..."
  kill -9 ${PID}
fi

# 检查日志文件是否存在
if [[ -f ${LOG_PATH} ]]; then
  echo "Log file exists. Backing up..."
  if [[ ! -d ${BACKUP_DIR} ]]; then
    mkdir ${BACKUP_DIR}
  fi
  cp ${LOG_PATH} ${BACKUP_DIR}/$(date +%Y%m%d%H%M%S).log
  echo "Log file backed up to ${BACKUP_DIR}."
fi

# 启动Java进程
nohup java ${JAVA_OPTS} -jar ${APP_NAME} > ${LOG_PATH} 2>&1 &

# 检查Java进程是否启动成功
sleep 10
PID=$(ps -ef | grep ${APP_NAME} | grep -v grep | awk '{print $2}')
if [[ -n ${PID} ]]; then
  echo "Java process started successfully, PID is ${PID}."
else
  echo "Failed to start Java process."
fi


参考链接

1. Linux重启Java进程的.sh脚本详解文章来源地址https://www.toymoban.com/news/detail-618096.html

到了这里,关于Java - sh 脚本启动 jar 包等服务 - sh 脚本模板 - 适用于任何类似的服务启动的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • java -jar 启动服务后,关闭命令窗口后服务停止

    问题:当我们用java -jar命令启动服务后,只有一直保持Xshell的窗口开启且正常连接服务器时才能访问服务,当关闭命令窗口时,服务会停止运行 解决:使用nohup命令启动服务 nohup(no hang up):不挂起 只要通过nohup命令启动服务,服务会一直运行 1.安装nohup,查询nohup是否安装

    2024年02月12日
    浏览(46)
  • 【密码学】Java课设-文件加密系统(适用于任何文件)

    文档显示乱码相信大家一定不陌生,一份很喜欢的文档内容/数据,下载到自己电脑上却是这样的 项目中一些核心程序打开是这样的 文件加密,不仅可以提高数据安全性,还可以在很大程度上保护个人权益/财产不被侵犯。 本篇文章采用的是对称加密方式,效果如下。 常见的

    2024年02月04日
    浏览(45)
  • [含完整代码]Linux使用.sh脚本自动部署(启动|停止|状态|日志)项目[超详细]

    个人博客: www.wdcdbd.com   我们在linux部署.jar项目时,都需要通过java -jar的形式来部署,每次都要手动停止,部署,这样用起来会很麻烦。所以,这篇文章就是自己通过.sh脚本一键 启动 , 停止 , 重启 , 查看状态 , 查看日志 。这样会方便一些。  将你的java项目放到你lin

    2024年01月19日
    浏览(55)
  • bat脚本启动Java服务

    Java项目一般会被打包成jar后启动,在windows系统中可以通过终端窗口cmd启动jar包,即在jar包所在的目录中打开cmd,或在cmd中进入到jar包目录,执行如下命令: 如果想指定jar包启动时用的配置文件,可用-Dspring.config.location指定配置文件路径,这样即可达到配置文件参数可修改的

    2024年02月13日
    浏览(43)
  • SpringBoot项目(jar)部署,启动脚本

    SpringBoot项目(jar)部署,需要先关闭原来启动的项目,再启动新的项目。直接输入命令,费时费力,还容易出错。所以,使用脚本启动。 脚本名: start.sh 此脚本需要放置在jar包的同级目录,才能正确找到jar包。 在脚本所在目录,执行如下命令: 一开始,我在给pid赋值时,

    2024年02月10日
    浏览(43)
  • Windows环境使用bat脚本启动Java服务

    Java项目一般会被打包成jar后启动,在windows系统中可以通过终端窗口cmd启动jar包,即在jar包所在的目录中打开cmd,或在cmd中进入到jar包目录,执行如下命令: 在bat脚本中执行java服务,命令与cmd中类似,可能会出现在启动之前,该服务要使用的端口已经被占用,或者说该服务已

    2024年02月11日
    浏览(49)
  • 使用java执行bat、sh脚本文件

    在工作中,由于需求,需要完成让java去调用.bat文件和.sh文件的操作,接下来开始编码 此处用到了糊涂工具类 maven如下 由此代码来执行bat或sh脚本文件(PS:糊涂工具包用不用无所谓,只是用来判断是否为windows系统的)

    2024年02月12日
    浏览(50)
  • MySQL 服务无法启动。服务没有报告任何错误。

    一、错误  二、解决方法 1、将安装mysql的根目录下的 data 文件清空(如果有重要的数据文件,一定要先备份!!) 2、win+R,运行cmd,在mysql目录下的bin目录下执行命令: root@localhost:后面这一串就是mysql的 初始登录密码 ,复制保留,后面要用到的。 3、如果已安装mysql服务,需

    2024年02月12日
    浏览(52)
  • Linux  jar包自启动脚本(亲测有效)

    在Linux服务器上设置开机启动jar包,服务器重启时就会自动运行项目,实现半自动化,实现思路如下。 方法一: 1、在jar包同级目录下创建执行脚本 2、自启动脚本文件保存后退出(按Esc键  :wq),文件授权 3、修改/etc/rc.d/rc.local 4、重启测试 5、待服务器重启后通过命令查看

    2024年02月21日
    浏览(30)
  • Linux使用脚本启动jar/war包(springboot+maven工程jar包)

    本文以 jar包 为例(war包是同样的操作流程)。 以springboot工程为例。 我打包用的maven。 在pom文件中可以约束最终的jar包名称: mvn clear 再然后 mvn install 这些都没什么好说的。 通过xftp或别的方式, 将jar包放入服务器某个目录 : yml文件放入jar包的同一个目录,内容是常规的

    2024年02月09日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包