启动本地游戏服.bat 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. @echo off
  2. REM 设置控制台编码为 UTF-8
  3. chcp 65001 >nul
  4. REM 设置 JAR 包的名称
  5. set JAR_NAME=incubator-game-1.0-SNAPSHOT.jar
  6. REM 设置 Log4j2 配置文件路径
  7. set LOG4J_CONFIG=conf/log4j2.xml
  8. REM 设置 Java 选项,包含优化和编码修复
  9. set JAVA_OPTS=-XX:+UnlockExperimentalVMOptions ^
  10. -XX:+UseG1GC ^
  11. -XX:MaxGCPauseMillis=200 ^
  12. -XX:+ParallelRefProcEnabled ^
  13. -XX:+AlwaysPreTouch ^
  14. -Xms2G ^
  15. -Xmx2G ^
  16. -XX:+UseStringDeduplication ^
  17. -XX:G1NewSizePercent=30 ^
  18. -XX:G1MaxNewSizePercent=60 ^
  19. -XX:InitiatingHeapOccupancyPercent=45 ^
  20. -XX:SurvivorRatio=8 ^
  21. -XX:+HeapDumpOnOutOfMemoryError ^
  22. -XX:HeapDumpPath=heapdump.hprof ^
  23. -Dfile.encoding=UTF-8 ^
  24. -Dsun.jnu.encoding=UTF-8 ^
  25. REM 设置 JAR 包路径
  26. set JAR_PATH=%~dp0%JAR_NAME%
  27. REM 检查 JAR 包是否存在
  28. if not exist "%JAR_PATH%" (
  29. echo [ERROR] 未找到 JAR 包 "%JAR_PATH%"
  30. pause
  31. exit /b
  32. )
  33. REM 检查 Log4j2 配置文件是否存在
  34. if not exist "%~dp0%LOG4J_CONFIG%" (
  35. echo [ERROR] 未找到 Log4j2 配置文件 "%~dp0%LOG4J_CONFIG%"
  36. pause
  37. exit /b
  38. )
  39. REM 检查 Java 是否安装
  40. java -version >nul 2>&1
  41. if %ERRORLEVEL% NEQ 0 (
  42. echo [ERROR] Java 未安装或未配置 JAVA_HOME,请检查环境变量。
  43. pause
  44. exit /b
  45. )
  46. REM 启动 JAR 包
  47. echo 正在启动游戏服务端...
  48. java %JAVA_OPTS% -jar "%JAR_PATH%"
  49. REM 提示并保持窗口运行
  50. echo 游戏服务端运行中,按 Ctrl+C 停止服务或关闭窗口以退出...
  51. pause