凌峰创科服务平台

Minecraft服务器BAT文件如何正确启动与配置?

为什么需要 .bat 文件?

.bat 是 Windows 的批处理文件,它能让你通过双击一个文件,自动执行一系列命令,

Minecraft服务器BAT文件如何正确启动与配置?-图1
(图片来源网络,侵删)
  • 进入服务器文件目录。
  • 启动 Minecraft 服务器。
  • 自动分配服务器所需的内存。
  • 在窗口关闭时自动重启服务器。

这比每次手动在命令提示符里输入命令要方便得多。


前提条件:安装 Java (JDK)

在运行任何脚本之前,请确保你的电脑已经安装了 Java,你可以从 Oracle 官网Adoptium (Eclipse Temurin) 下载并安装 JDK 17 (Minecraft 1.17+ 的推荐版本)。

如何检查 Java 是否安装?

  1. Win + R,输入 cmd,打开命令提示符。
  2. 输入 java -version,然后按回车。
  3. 如果看到版本号(如 java version "17.0.2"),说明已安装,如果提示“不是内部或外部命令...”,说明未安装或环境变量未配置好。

最简单的启动脚本

这个脚本只做一件事:启动你的服务器。

Minecraft服务器BAT文件如何正确启动与配置?-图2
(图片来源网络,侵删)

步骤:

  1. 在你的服务器文件夹里(D:\Minecraft_Server),新建一个文本文档。
  2. 将下面的代码复制进去。
  3. 将文件另存为 start.bat注意保存类型要选“所有文件”,而不是 .txt
@echo offMinecraft Server
echo Starting Minecraft Server...
java -Xms1G -Xmx1G -jar paper.jar nogui
pause

代码解释:

  • @echo off: 关闭命令回显,让窗口看起来更整洁,Minecraft Server`: 设置窗口标题,方便识别。
  • echo Starting Minecraft Server...: 在启动前打印一行提示信息。
  • java: 启动 Java 程序。
  • -Xms1G: 设置 初始堆内存 为 1GB。G 代表 GB。
  • -Xmx1G: 设置 最大堆内存 为 1GB。这是最重要的参数! 根据你的服务器需求和电脑内存来调整。-Xmx4G 4GB。
  • -jar paper.jar: 指定要运行的 .jar 文件。请将 paper.jar 替换成你自己的服务器核心文件名,如 spigot.jar, purpur.jar 等。
  • nogui: 以无图形界面模式启动,性能更好,也方便在批处理窗口中查看和控制。
  • pause: 在程序结束后暂停,让你能看到最后的输出信息,防止窗口一闪而过。

带控制台和自动重启功能的脚本(强烈推荐)

这个脚本功能更强大,它允许你在同一个窗口里输入服务器控制台命令,并且在服务器意外关闭后会自动重启。

步骤:

Minecraft服务器BAT文件如何正确启动与配置?-图3
(图片来源网络,侵删)
  1. 在你的服务器文件夹里,新建一个文本文档。
  2. 将下面的代码复制进去。
  3. 将文件另存为 run.batstart.bat
@echo offMinecraft Server Console
:start
echo Server is starting...
java -Xms1G -Xmx1G -jar paper.jar nogui
echo.
echo Server has closed. Restarting in 5 seconds...
timeout /t 5 /nobreak >nul
goto start

代码解释:

  • start: 这是一个,是 goto 命令跳转的目标点。
  • goto start: 这是一个跳转命令,当上面的 java 命令执行完毕(即服务器关闭)后,它会跳回到 start 标签,形成一个无限循环,从而实现自动重启。
  • timeout /t 5 /nobreak >nul: 服务器关闭后,等待 5 秒再重启。>nul 是为了隐藏 timeout 命令自身的输出,保持窗口整洁。
  • 如何停止服务器?
    • 在这个窗口中输入 stop 命令,服务器会正常关闭,然后脚本会进入重启等待。
    • 要彻底停止脚本(不再重启),请在窗口中按 Ctrl + C,系统会询问你是否终止批处理作业,输入 Y 并回车即可。

带服务器状态检查和更优重启的脚本

这个脚本更智能一些,它会检查服务器是否因为崩溃而关闭,并给出不同的提示。

步骤:

  1. 在你的服务器文件夹里,新建一个文本文档。
  2. 将下面的代码复制进去。
  3. 将文件另存为 run.bat
@echo off
setlocal enabledelayedexpansion
Minecraft Server Console
:: --- 服务器配置 ---
set "SERVER_JAR=paper.jar"
set "INITIAL_MEM=1G"
set "MAX_MEM=4G"
:: -----------------
:start
echo [%time%] Server is starting...
echo.
java -Xms%INITIAL_MEM% -Xmx%MAX_MEM% -jar %SERVER_JAR% nogui
set "exit_code=%errorlevel%"
if %exit_code% equ 0 (
    echo.
    echo [%time%] Server was shut down normally. Restarting...
) else (
    echo.
    echo [%time%] Server crashed with exit code %exit_code%. Restarting...
)
echo.
echo Waiting 10 seconds before restarting...
timeout /t 10 /nobreak >nul
goto start

代码解释:

  • setlocal enabledelayedexpansion: 启用延迟变量扩展,这在循环和判断中很有用。
  • set "SERVER_JAR=...": 将服务器核心文件名定义为一个变量,方便修改。
  • set "INITIAL_MEM=..."set "MAX_MEM=...": 同样,将内存定义为变量。
  • set "exit_code=%errorlevel%": errorlevel 是上一个命令的退出码。0 代表正常退出(你输入了 stop),非 0 代表异常崩溃(比如内存不足或插件错误)。
  • if %exit_code% equ 0 (...) else (...): 这是一个判断语句,如果退出码是 0,就打印“正常关闭”的提示;否则,打印“崩溃”的提示,让你知道服务器出问题了。

如何使用这些脚本?

  1. 放置文件:将你选择的 .bat 文件和你的服务器核心文件(如 paper.jar)放在同一个文件夹里。
  2. 首次启动:双击 .bat 文件,它会首次下载服务器所需的文件(如 libraries 文件夹和 eula.txt)。
  3. 同意服务条款
    • 首次启动失败后,文件夹里会生成一个 eula.txt 文件。
    • 用记事本打开它,将 eula=false 改为 eula=true
    • 保存后,再次双击 .bat 文件,服务器就会正式启动了。
  4. 管理服务器
    • .bat 窗口中,你可以输入所有标准的 Minecraft 服务器命令,如 op <玩家名>, ban <玩家名>, save-all, stop 等。
    • Ctrl + C 可以强制停止整个批处理脚本。

常见问题与优化

  • 内存不足怎么办?

    • 确保 -Xmx 的值不要超过你电脑物理内存的一半,你有 8GB 内存,-Xmx 设置为 3G 或 4G 比较安全。
    • 如果你使用集成显卡(CPU 自带的显卡),建议再减少 1G 的内存分配,因为系统也需要内存。
  • 如何更新服务器核心?

    • 下载新的 .jar 文件。
    • 备份你的世界文件夹(world)和 plugins 文件夹!
    • 用新的 .jar 文件覆盖掉旧的 .jar 文件。
    • 重新运行 .bat 文件即可。
  • 如何添加启动参数(JVM Flags)?

    • java -jar ... 这一行,-Xms-Xmx JVM 参数,你还可以添加其他参数来优化性能。
    • 添加 -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 可以启用 G1 垃圾回收器,对大服务器性能更好。
    • 警告:不要随意添加不了解的参数,可能会导致服务器无法启动。

希望这份详细的指南能帮助你成功搭建和管理你的 Minecraft 服务器!

分享:
扫描分享到社交APP
上一篇
下一篇