linux服务器更新jar包脚本
- 互联网
- 2025-09-22 07:33:01

【需求】Java每次发布新的版本都需要先kill掉原来的服务,然后再启动新的包 有了这个脚本只需要把包替换掉,服务会自动kill
以8184 为例 完整的脚本如下
#!/bin/bash # 检查端口 8184 是否被占用 PORT=8184 PID=$(lsof -t -i:$PORT) if [ -n "$PID" ]; then # 如果端口被占用,杀死占用该端口的进程 echo "Port $PORT is occupied by PID $PID. Killing the process." kill -9 $PID else # 如果端口没有被占用 echo "Port $PORT is not occupied. Proceeding with starting the Java service." fi # 执行 Java 服务 echo "Starting Java service with profile 'product'..." java -jar admin.jar --spring.profiles.active=product & echo "Java service started." 解释: lsof -t -i:$PORT:使用 lsof 命令检查端口 8184 是否被占用。如果被占用,lsof 会返回该进程的 PID。if [ -n "$PID" ]:检查 PID 变量是否为空。如果 PID 不为空,说明端口被占用。kill -9 $PID:强制终止占用该端口的进程。java -jar admin.jar --spring.profiles.active=product &:使用 java -jar 来后台启动 Java 服务,这样即使退出终端,服务也能继续运行。echo:用于打印日志,帮助你跟踪脚本执行状态。 使用说明: 保存脚本为一个 .sh 文件(例如 start_service.sh)。给予执行权限:chmod +x start_service.sh。执行脚本:./start_service.sh。这个脚本会首先检查端口 8184 是否被占用,如果占用则终止进程,并重新启动 Java 服务。如果端口没有被占用,则直接启动服务。
linux服务器更新jar包脚本由讯客互联互联网栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“linux服务器更新jar包脚本”
上一篇
游戏引擎学习第131天
下一篇
10.指针进阶