windows下bat脚本启动springboot项目jar包
一、SpringBoot打jar包
idea打开项目,如果项目是 gradle 仓库,使用如下方式,进行打包:双击bootJar
1.双击clean,清空之前的打包记录
2.双击 bootJar,进行打包,打包文件 在项目根目录build下的libs下
idea打开项目,如果项目是 maven仓库,使用如下方式,进行打包:
项目右键—》Run Maven—>clean—>install
二、jar包部署运行
2.1 jar包运行的方式:
最简单的方式。在jar包所在目录位置,打开cmd窗口,输入
java -jar xxx.jar
即可运行项目,例:
**
但是命令行一旦关闭,项目会停止运行
**。
为保证项目不停止运行,可以写一个bat批处理脚本。使该项目在后台运行
2.2 bat批处理脚本(单次)
使用文本文档输入如下内容:
@echo off
java -jar xxx.jar
exit
保存为 start.bat文件
双击生成的bat脚本:
启动成功。
注意: 该脚本会执行项目,但是不会关闭窗口,一旦关闭窗口,项目会关闭。
2.3 bat批处理脚本(后台运行,没有命令弹窗)
要想在后台执行该jar,需要以下脚本:
@echo off
start javaw -jar D:\work-zakj\hwariot-mix-service\build\libs\xx.jar
exit
其中,jar包位置需要绝对路径,不然有可能会报错:“Unable to access jarfile”
将脚本更名为start.bat。执行即可后台启动该项目。
双击即可。想看是否启动成功,可以访问项目中的接口是否可以正常访问来判断。
2.3 关闭项目
关闭项目:根据启动项目的端口号,查看端口进程,杀死进程
1.cmd窗口查看被占用的端口号:
netstat -ano | findstr 8888
2.查看PID对应的进程
tasklist | findstr “pid”
3.杀死占用的端口号:
taskkill /pid 27008 /f
延申:bat批处理文件的多样化
编写脚本:单次启动:
@echo off
set port=8888
for/f "usebackq tokens=1-5"%%a in (`netstat -ano ^| findstr %port%`)do(if[%%d] EQU [LISTENING](set pid=%%e
))if"%pid%" == "" goto startif not "%pid%" == "" goto run
:run
echo%port% (采集程序运行中)port is opening...
pause
exit
:startecho(开始启动采集程序)starting collect program...
java -jar D:\work-zakj\hwariot-mix-service\build\libs\hwariot-mix-service-0.0.1-SNAPSHOT.jar
echo.Starting Success!
exit
编写vbs文件,启动(没有命令弹窗,后台运行)
set ws=WScript.CreateObject("WScript.Shell")
ws.Run "F:\tianjin\tianjin\tj_collect_data.bat /start",0
关闭项目:
@echo off
SET port=8888
for/f "usebackq tokens=1-5"%%a in (`netstat -ano ^| findstr %port%`)do(if[%%d] EQU [LISTENING](set pid=%%e
))echo close : %port% %pid%
if not "%pid%" == "" taskkill /f /pid %pid%
echostart
PING 127.1 -n 5 >nul
java -jar D:\work-zakj\hwariot-mix-service\build\libs\hwariot-mix-service-0.0.1-SNAPSHOT.jar
exit
版权归原作者 12程序猿 所有, 如有侵权,请联系我们删除。