Jeecg-boot一键启动或重启
一、前言
-
Windows 平台
-
Nginx
-
Jeecg-boot
-
其它
bat脚本:https://www.yiibai.com/batch_script/batch_script_overview.html
Nginx:http://nginx.org/en/download.html
Jeecg-boot:http://jeecg-boot.mydoc.io/
二、正文
- redis 和 mysql 可在 windows 服务进行管理,所以一键启动的是 nginx 和 jeecg-boot 的 jar 包
1.场景一
场景说明:在重启的过程中,会关闭所有 nginx 进程 和 java 进程
- 创建
jeecg-onekey.bat
文件
根据实际环境,修改
nginx_home
、server_home
和server_name
其它变量:
nginx_ename
和java_ename
echo off
set nginx_home=D:\deployment\nginx-1.17.3\
set server_home=D:\deployment\server\
set server_name=jeecg-boot.jar
:: ====【 nginx 】====
set nginx_ename=nginx.exe
cd /d %nginx_home%
tasklist | findstr /i "%nginx_ename%"
if %ERRORLEVEL% == 0 (
goto :stop_nginx
goto :start_nginx
goto :eof
) else (
goto :start_nginx
goto :eof
)
:stop_nginx
echo "nginx is running, stopping..."
rem nginx -s stop
TASKKILL /F /IM %nginx_ename% /T
echo "nginx stop ok"
:start_nginx
echo "nginx is not running, starting"
start "" %nginx_ename%
echo "nginx start ok"
:: ====【 server 】====
set java_ename=java.exe
cd /d %server_home%
tasklist | findstr /i "%java_ename%"
if %ERRORLEVEL% == 0 (
goto :stop_server
goto :start_server
goto :eof
) else (
goto :start_server
goto :eof
)
:stop_server
echo "server is running, stopping..."
TASKKILL /F /IM %java_ename% /T
echo "server stop ok"
:start_server
echo "server is not running, starting"
rem "java -jar %server_name%"
start cmd /k java -jar %server_name%
echo "server start ok"
::pause
2.场景二
场景说明:在重启的过程中,会关闭所有 nginx 进程 和 关闭指定端口的 java 进程
- 创建
jeecg-onekey-port.bat
文件
根据实际环境,修改
nginx_home
、server_home
和server_name
其它变量:
nginx_ename
和java_ename
echo off
set nginx_home=D:\deployment\nginx-1.17.3\
set server_home=D:\deployment\server\
set server_name=jeecg-boot.jar
set server_port=8080
:: ====【 nginx 】====
set nginx_ename=nginx.exe
cd /d %nginx_home%
tasklist | findstr /i "%nginx_ename%"
if %ERRORLEVEL% == 0 (
goto :stop_nginx
goto :start_nginx
goto :eof
) else (
goto :start_nginx
goto :eof
)
:stop_nginx
echo "nginx is running, stopping..."
rem nginx -s stop
TASKKILL /F /IM %nginx_ename% /T
echo "nginx stop ok"
:start_nginx
echo "nginx is not running, starting"
start "" %nginx_ename%
echo "nginx start ok"
:: ====【 server 】====
set java_ename=java.exe
cd /d %server_home%
tasklist | findstr /i "%java_ename%"
if %ERRORLEVEL% == 0 (
goto :stop_server
goto :start_server
goto :eof
) else (
goto :start_server
goto :eof
)
:stop_server
echo "server is running, stopping..."
:: find pid by port
for /f "tokens=5" %%i in ('netstat -aon ^| findstr ":%server_port%"') do (
set pid=%%i
)
TASKKILL /F /PID %pid%
echo "server stop ok"
:start_server
echo "server is not running, starting"
rem "java -jar %server_name%"
start cmd /k java -jar %server_name%
echo "server start ok"
::pause