使用 jenkins 构建 SpringBoot 项目时,需要增加 kill 进程的功能,否则再次启动时会失败,提示端口被占用。
Windows 平台的脚本
命令
for /f "tokens=5" %%p in ('netstat /anop tcp ^| findstr /i 8007 ^| findstr /i listening') do taskkill /f /pid %%p
 
解释
for,遍历结果,结果是in后面括号里面的命令执行的结果/f "tokens=5" %%p,获取第五列的结果,并赋值给变量 pin (xxx),执行xxx命令netstat /anop tcp ^| findstr /i 8007 ^| findstr /i listening,8007改成实际的 SpringBoot 程序的端口号。

do,如果发现符合的结果,执行后面的命令
jenkins 配置
可以在 build 的最前面加上 Execute Windows Batch Command 步骤,如图:

 点击 Build Now,看下发现执行了:




















