当前位置: 首页 > news >正文

windows服务器更新jar包脚本

【需求】Java每次发布新的版本都需要先kill掉原来的服务,然后再启动新的包  有了这个脚本只需要把包替换掉,服务会自动kill  

以6001 为例  完整的脚本如下

@echo off
REM 检查端口 6001 是否被占用
netstat -ano | findstr :6001 > nul
IF %ERRORLEVEL% EQU 0 (
    REM 如果端口被占用,查找并杀死进程
    FOR /F "tokens=5" %%i in ('netstat -ano ^| findstr :6001') do (
        echo Killing process with PID %%i
        taskkill /PID %%i /F
    )
)

REM 启动新的 Java 服务
java -jar admin.jar --spring.profiles.active=product

脚本解析:

  1. netstat -ano | findstr :6001:检查端口 6001 是否被占用。如果端口被占用,则返回进程信息。
  2. IF %ERRORLEVEL% EQU 0:如果端口被占用,继续执行杀死进程的命令。
  3. FOR /F "tokens=5" %%i in ('netstat -ano ^| findstr :6001') do:查找并获取占用端口的进程 ID(PID)。
  4. taskkill /PID %%i /F:根据 PID 强制杀死进程。
  5. 最后,启动新的 Java 服务:java -jar admin.jar --spring.profiles.active=product

相关文章:

  • 【pytest框架源码分析三】pluggy源码分析之hook注册调用流程
  • Compose笔记(七)--Modifier
  • 《算法笔记》9.6小节 数据结构专题(2)并查集 问题 C: How Many Tables
  • EasyExcel构建复杂多级表头
  • 网络安全员证书
  • go类(结构体)和对象
  • windows下玩转vllm:在wsl下安装vllm
  • 高速光耦在通信行业的应用(四) | 1Mbps通信光耦的应用
  • sentinel详细使用教学
  • 两分种解决:xshell终端delete键无效
  • c++中的静态多态和动态多态简介
  • 性能测试【Perfdog】
  • 接口测试工具:postman详解
  • CAM350_安装
  • 【Linux高级IO】Linux多路转接:深入探索poll与epoll的奥秘
  • Ollama的底层实现原理分析
  • 《浔川AI翻译v6.1.1版本推迟上线公告》
  • C++类和对象
  • 算法day4 dfs搜索2题
  • 【机房——LCA】
  • WordPress清除ID沉余/邹平县seo网页优化外包
  • 网站title 在哪里设置/网络整合营销4i原则
  • 局域网动态网站建设/seo职业规划
  • 网页设计学生实训报告总结/如何seo推广
  • 开发手机端网站模板下载/seo的工作流程
  • 南通网站制作/有产品怎么找销售渠道