ry.bat 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. @echo off
  2. rem jar平级目录
  3. set AppName=ruoyi-admin.jar
  4. set JarPath=./out/ruoyi-admin.jar
  5. set Env=test
  6. rem JVM参数
  7. 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"
  8. ECHO.
  9. ECHO. [1] 启动%AppName%
  10. ECHO. [2] 关闭%AppName%
  11. ECHO. [3] 重启%AppName%
  12. ECHO. [4] 启动状态 %AppName%
  13. ECHO. [6] 关闭Nginx
  14. ECHO. [5] 退 出
  15. ECHO.
  16. ECHO.请输入选择项目的序号:
  17. set /p ID=
  18. IF "%id%"=="1" GOTO start
  19. IF "%id%"=="2" GOTO stop
  20. IF "%id%"=="3" GOTO restart
  21. IF "%id%"=="4" GOTO status
  22. IF "%id%"=="6" GOTO stopNginx
  23. IF "%id%"=="7" GOTO startNginx
  24. IF "%id%"=="5" EXIT
  25. PAUSE
  26. :stopNginx
  27. taskkill /f /fi "imagename eq nginx.exe"
  28. goto:eof
  29. :start
  30. for /f "usebackq tokens=1-2" %%a in (`jps -l ^| findstr %AppName%`) do (
  31. set pid=%%a
  32. set image_name=%%b
  33. )
  34. if defined pid (
  35. echo %%is running
  36. PAUSE
  37. )
  38. echo javaw %JVM_OPTS% -jar %JarPath% --spring.profiles.active=%Env%
  39. start javaw %JVM_OPTS% -jar %JarPath% --spring.profiles.active=%Env%
  40. echo starting……
  41. echo Start %AppName% success...
  42. goto:eof
  43. rem 函数stop通过jps命令查找pid并结束进程
  44. :stop
  45. for /f "usebackq tokens=1-2" %%a in (`jps -l ^| findstr %AppName%`) do (
  46. set pid=%%a
  47. set image_name=%%b
  48. )
  49. if not defined pid (echo process %AppName% does not exists) else (
  50. echo prepare to kill %image_name%
  51. echo start kill %pid% ...
  52. rem 根据进程ID,kill进程
  53. taskkill /f /pid %pid%
  54. )
  55. goto:eof
  56. :restart
  57. call :stop
  58. call :start
  59. goto:eof
  60. :status
  61. for /f "usebackq tokens=1-2" %%a in (`jps -l ^| findstr %AppName%`) do (
  62. set pid=%%a
  63. set image_name=%%b
  64. )
  65. if not defined pid (echo process %AppName% is dead ) else (
  66. echo %image_name% is running
  67. )
  68. goto:eof