windows下bat命令启动springboot项目jar包

一、前言

由于项目需要在本地调试,写成bat文件执行xxxx.jar文件,正常我们执行后台命令start %JAVA_HOME%\bin\javaw.exe -jar XXX.jar,是能启动程序,但是后台找到的进程是javaw.exe,如果出现多个jar启动,我们不知道停止那个应用,所以需要对进程起名。

  1. 方式一:
    使用拷贝javaw.exe重命名的方式:copy "%JAVA_HOME%\bin\javaw.exe" "%JAVA_HOME%\bin\XXX.exe",这样我们就可以找到具体的进程名称了。
  2. 方式二:
    直接去java的路径下手动复制一份javaw.exe,然后设置项目名,这里以xxl-job-admin.jar为例。

二、bat命令

        

@echo off
 
::检测后台是否已经在运行
:begin
echo 后台程序运行信息如下:
tasklist  /nh|find /i "javaw.exe"
if ERRORLEVEL 1 (goto activate) else (goto activated)
 
 
::如果后台已经在运行,则提示,并询问
:activated
echo.
echo 后台正在运行中...
echo.
echo  请输入以下命令
echo   S       关闭后台(shutdown)
echo   R       重启后台(restart)
echo   E       退出(exit)
echo.
set /p commandActivated=输入您的命令:
if "%commandActivated%"=="S" (goto shutdownService) else if "%commandActivated%"=="R" (goto restartService) else (goto exitCmd)
 
::关闭后台
:shutdownService
taskkill -f -t -im javaw.exe
echo.
echo 项目已关闭
goto begin
 
 
::重启后台
:restartService
taskkill -f -t -im javaw.exe
echo.
echo 项目已关闭
goto startService
 
::如果后台没有在运行,则提示,并询问
:activate
echo.
echo 后台未运行
echo.
echo  请输入以下命令
echo   S       启动后台(start)
echo   E       退出(exit)
echo.
set /p commandActivate=输入您的命令:
if "%commandActivate%"=="S" (goto startService)  else (goto exitCmd)
 
::启动后台
:startService
start javaw -jar xxl-job-admin-2.3.0.jar 
set countdown=30
for /L %%a in (
%countdown%,-1,0
) do (
echo.
echo 项目正在启动,请不要退出...
echo.
echo %countdown%秒后将自动检查启动情况
echo 还剩余 %%a 秒
ping -n 2 localhost 1>nul 2>nul
cls
)
echo.
echo 后台程序运行信息如下:
tasklist  /nh|find /i "javaw.exe"
if ERRORLEVEL 1 (goto startError) else (goto startSuccess)
 
 
::启动失败
:startError
echo.
echo 项目启动失败,请检查相关配置
goto begin
 
::启动成功
:startSuccess
echo.
echo 项目已启动
goto begin
 
 
 
 
::退出
:exitCmd
echo.
echo 您可以关闭这个窗口或按任何键将退出
pause > nul

三、说明:
乱码解决:使用Notepad++ 将编码设置为:ANSI 编码 再将中文替换

四、参考:
作者:会飞的鱼_ld
链接:https://www.jianshu.com/p/b190f6fd074d
 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值