背景:最近把一个传统的web项目改造成了spring boot项目,项目打包成jar运行后关闭起来比较麻烦,在Windows环境下,直接关闭cmd窗口后,java进程还在执行。
所以只能是通过taskkill 命令强制结束进程。
结束进程有三种方法,现在只介绍一种比较实用的方法。通过jps查找到进程ID。
具体的三种方法可以查看通过bat脚本停止java进程的三个方法
taskkill命令需要先查找到java进程的pid。
通过 jps + findstr 命令 通过程序名称查找出正在运行的java进程
然后在通过taskkill命令结束查找到进程,
我们发现这个操作起来比较麻烦,需要敲一堆命令,不适合我这种懒人。我只想点点鼠标就能完成操作。于是就想着写个.bat脚本。
说干就干,借鉴了前面的文章通过bat脚本停止java进程的三个方法 改了改文章里提供的脚本
@echo off
set char=xxxx
echo char : %char%
for /f "usebackq tokens=1-2" %%a in (`jps -l ^| findstr %char%`) do (
echo find process %%a %%b
set pid=%%a
set image_name=%%b
)
echo now will kill process : pid %pid%, image_name %image_name%
pause
rem 根据进程ID,kill进程
taskkill /f /pid %pid%
pause
把xxx改成要查找的java程序的名称就可以了。
set char=xxxx