62 lines
1.3 KiB
Batchfile
62 lines
1.3 KiB
Batchfile
@echo off
|
|
setlocal EnableDelayedExpansion
|
|
|
|
set "AppName=cmvr-iot-admin.jar"
|
|
set "AppJar=cmvr-iot-admin\target\cmvr-iot-admin.jar"
|
|
if exist "%AppName%" set "AppJar=%AppName%"
|
|
set "JVM_OPTS=-Dname=%AppName% -Duser.timezone=Asia/Shanghai -Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParallelGC"
|
|
|
|
if not exist "%AppJar%" (
|
|
echo Missing %AppJar%. Run mvn clean package -DskipTests first.
|
|
exit /b 1
|
|
)
|
|
|
|
echo.
|
|
echo [1] Start %AppName%
|
|
echo [2] Stop %AppName%
|
|
echo [3] Restart %AppName%
|
|
echo [4] Status %AppName%
|
|
echo [5] Exit
|
|
echo.
|
|
set /p ID=Select an action:
|
|
if "%ID%"=="1" goto start
|
|
if "%ID%"=="2" goto stop
|
|
if "%ID%"=="3" goto restart
|
|
if "%ID%"=="4" goto status
|
|
if "%ID%"=="5" exit /b 0
|
|
exit /b 1
|
|
|
|
:findPid
|
|
set "pid="
|
|
for /f "tokens=1" %%a in ('jps -lv ^| findstr /C:"%AppName%"') do set "pid=%%a"
|
|
exit /b 0
|
|
|
|
:start
|
|
call :findPid
|
|
if defined pid (
|
|
echo %AppName% is already running with PID !pid!.
|
|
exit /b 0
|
|
)
|
|
start "cmvr-iot" javaw %JVM_OPTS% -jar "%AppJar%"
|
|
echo Started %AppName%.
|
|
exit /b 0
|
|
|
|
:stop
|
|
call :findPid
|
|
if not defined pid (
|
|
echo %AppName% is not running.
|
|
exit /b 0
|
|
)
|
|
taskkill /f /pid !pid!
|
|
exit /b %ERRORLEVEL%
|
|
|
|
:restart
|
|
call :stop
|
|
call :start
|
|
exit /b 0
|
|
|
|
:status
|
|
call :findPid
|
|
if defined pid (echo %AppName% is running with PID !pid!.) else (echo %AppName% is not running.)
|
|
exit /b 0
|