68 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Batchfile
		
	
	
	
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Batchfile
		
	
	
	
	
	
@echo off
 | 
						||
 | 
						||
rem jar平级目录
 | 
						||
set AppName=ruoyi-admin.jar
 | 
						||
 | 
						||
rem JVM参数
 | 
						||
set JVM_OPTS="-Dname=%AppName%  -Duser.timezone=Asia/Shanghai -Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -XX:+PrintGCDateStamps  -XX:+PrintGCDetails -XX:NewRatio=1 -XX:SurvivorRatio=30 -XX:+UseParallelGC -XX:+UseParallelOldGC"
 | 
						||
 | 
						||
 | 
						||
ECHO.
 | 
						||
	ECHO.  [1] 启动%AppName%
 | 
						||
	ECHO.  [2] 关闭%AppName%
 | 
						||
	ECHO.  [3] 重启%AppName%
 | 
						||
	ECHO.  [4] 启动状态 %AppName%
 | 
						||
	ECHO.  [5] 退 出
 | 
						||
ECHO.
 | 
						||
 | 
						||
ECHO.请输入选择项目的序号:
 | 
						||
set /p ID=
 | 
						||
	IF "%id%"=="1" GOTO start
 | 
						||
	IF "%id%"=="2" GOTO stop
 | 
						||
	IF "%id%"=="3" GOTO restart
 | 
						||
	IF "%id%"=="4" GOTO status
 | 
						||
	IF "%id%"=="5" EXIT
 | 
						||
PAUSE
 | 
						||
:start
 | 
						||
    for /f "usebackq tokens=1-2" %%a in (`jps -l ^| findstr %AppName%`) do (
 | 
						||
		set pid=%%a
 | 
						||
		set image_name=%%b
 | 
						||
	)
 | 
						||
	if  defined pid (
 | 
						||
		echo %%is running
 | 
						||
		PAUSE
 | 
						||
	)
 | 
						||
 | 
						||
start javaw %JVM_OPTS% -jar %AppName%
 | 
						||
 | 
						||
echo  starting……
 | 
						||
echo  Start %AppName% success...
 | 
						||
goto:eof
 | 
						||
 | 
						||
rem 函数stop通过jps命令查找pid并结束进程
 | 
						||
:stop
 | 
						||
	for /f "usebackq tokens=1-2" %%a in (`jps -l ^| findstr %AppName%`) do (
 | 
						||
		set pid=%%a
 | 
						||
		set image_name=%%b
 | 
						||
	)
 | 
						||
	if not defined pid (echo process %AppName% does not exists) else (
 | 
						||
		echo prepare to kill %image_name%
 | 
						||
		echo start kill %pid% ...
 | 
						||
		rem 根据进程ID,kill进程
 | 
						||
		taskkill /f /pid %pid%
 | 
						||
	)
 | 
						||
goto:eof
 | 
						||
:restart
 | 
						||
	call :stop
 | 
						||
    call :start
 | 
						||
goto:eof
 | 
						||
:status
 | 
						||
	for /f "usebackq tokens=1-2" %%a in (`jps -l ^| findstr %AppName%`) do (
 | 
						||
		set pid=%%a
 | 
						||
		set image_name=%%b
 | 
						||
	)
 | 
						||
	if not defined pid (echo process %AppName% is dead ) else (
 | 
						||
		echo %image_name% is running
 | 
						||
	)
 | 
						||
goto:eof
 |