Windows 电脑搭建 Minecraft Java 版服务器保姆级教程
大家好!今天给大家带来一篇超详细的 Minecraft Java 版服务器搭建教程,从零基础开始,手把手教你在自己的 Windows 电脑上搭建一个专属的 MC 服务器,让小伙伴们可以一起联机玩耍!
准备工作
1. 系统要求
- 操作系统:Windows 10 或 Windows 11(64位)
- 内存:建议至少 8GB RAM(服务器占用 + 系统运行)
- 硬盘空间:至少 10GB 可用空间
- 网络:稳定的网络连接
2. 需要下载的软件
- Java 运行环境(JRE/JDK)
- Minecraft 服务端核心文件
- 文本编辑器(推荐 Notepad++ 或 VS Code)
第一步:安装 Java 环境
Minecraft Java 版服务器必须依赖 Java 环境才能运行。
方法一:下载官方 JDK(推荐)
-
访问 Oracle 官网下载页面
- 打开浏览器,访问:https://www.oracle.com/java/technologies/downloads/
- 或者使用开源的 OpenJDK:https://adoptium.net/
-
选择合适的版本
- Minecraft 1.17 及以下版本:需要 Java 8 或 Java 11
- Minecraft 1.18 - 1.20.4:需要 Java 17
- Minecraft 1.20.5 及以上:需要 Java 21
建议:如果你不确定要玩哪个版本,推荐下载 Java 17,兼容性最好
-
下载安装包
- 选择 Windows x64 Installer(.exe 文件)
- 点击下载
-
安装 Java
- 双击下载的 .exe 文件
- 点击”下一步”,保持默认安装路径即可
- 等待安装完成
-
验证安装
- 按
Win + R,输入cmd,回车打开命令提示符 - 输入以下命令并回车:
Terminal window java -version - 如果显示类似以下内容,说明安装成功:
java version "17.0.x" 202x-xx-xx LTSJava(TM) SE Runtime Environment (build 17.0.x+x-LTS-x)Java HotSpot(TM) 64-Bit Server VM (build 17.0.x+x-LTS-x, mixed mode, sharing)
- 按
方法二:使用 Microsoft Store 安装(更简单)
- 打开 Microsoft Store
- 搜索 “Java” 或 “OpenJDK”
- 选择合适的版本安装
- 同样用
java -version验证
第二步:下载 Minecraft 服务端
1. 确定游戏版本
首先决定你要搭建哪个版本的服务器。常见版本:
- 1.20.1:稳定版本,模组资源丰富
- 1.19.4:较新版本
- 1.16.5:经典版本,优化好
- 1.12.2:老牌版本,大量模组支持
建议新手:选择 1.20.1 版本,既有新特性又稳定
2. 下载服务端核心文件
方式 A:官方 Vanilla 服务端(纯净原版)
-
访问 Minecraft 官方下载页面: https://www.minecraft.net/zh-hans/download/server
-
点击 “minecraft_server.x.xx.x.jar” 下载按钮
- 例如:
minecraft_server.1.20.1.jar
- 例如:
-
将下载的 .jar 文件保存到一个新建的文件夹中
- 建议在 D 盘或 E 盘创建一个文件夹,如:
D:\MC_Server - 把 jar 文件放进去
- 建议在 D 盘或 E 盘创建一个文件夹,如:
方式 B:Paper 服务端(推荐,性能更好)
Paper 是基于官方服务端的优化版本,性能更好,bug 更少。
-
访问 PaperMC 官网: https://papermc.io/downloads/paper
-
选择 Minecraft 版本(如 1.20.1)
-
下载最新构建版本的 .jar 文件
-
同样放到服务器文件夹中
方式 C:Forge/Fabric 服务端(支持模组)
如果你想玩模组,需要下载对应的模组加载器服务端。
Forge 服务端:
- 访问:https://files.minecraftforge.net/
- 选择版本,下载 “Installer”
- 运行 installer,选择 “Install server”,指定安装目录
Fabric 服务端:
- 访问:https://fabricmc.net/use/server/
- 下载对应版本的服务器 jar
新手建议:先从 Paper 服务端 开始,熟悉后再尝试模组服务端
第三步:首次启动服务器
1. 创建启动脚本
在服务器文件夹(如 D:\MC_Server)中:
-
右键空白处 → 新建 → 文本文档
-
重命名为
start.bat(注意扩展名是 .bat 不是 .txt)- 如果看不到扩展名,点击文件夹上方的”查看” → 勾选”文件扩展名”
-
右键
start.bat→ 用记事本打开 -
根据你下载的服务端类型,输入以下内容:
如果是官方 Vanilla 服务端:
@echo offjava -Xms2G -Xmx4G -jar minecraft_server.1.20.1.jar noguipause如果是 Paper 服务端:
@echo offjava -Xms2G -Xmx4G -jar paper-1.20.1-xxx.jar noguipause参数说明:
-Xms2G:初始分配 2GB 内存-Xmx4G:最大分配 4GB 内存(根据你的电脑调整)-jar:指定要运行的 jar 文件nogui:不启动图形界面,节省资源pause:运行结束后暂停,方便查看错误信息
内存分配建议:
- 8GB 内存电脑:
-Xms2G -Xmx4G- 16GB 内存电脑:
-Xms4G -Xmx8G- 32GB 内存电脑:
-Xms8G -Xmx16G不要分配超过物理内存的 70%,否则会导致系统卡顿
2. 同意 EULA(用户协议)
- 双击运行
start.bat - 服务器会启动然后立即关闭,这是正常的
- 文件夹中会生成一个
eula.txt文件 - 用记事本打开
eula.txt - 找到这一行:
eula=false
- 改为:
eula=true
- 保存并关闭
3. 正式启动服务器
- 再次双击
start.bat - 这次服务器会正常启动
- 等待看到类似这样的提示:
[Server thread/INFO]: Done (xx.xxxs)! For help, type "help"
- 这说明服务器启动成功了!
注意:首次启动会生成世界文件,可能需要几分钟时间,请耐心等待
第四步:配置服务器
服务器文件夹中会生成很多文件,最重要的是 server.properties,这是服务器的主配置文件。
1. 编辑 server.properties
- 关闭服务器(在命令行窗口按
Ctrl + C,或输入stop后回车) - 用记事本或 Notepad++ 打开
server.properties - 以下是常用配置项及说明:
# ===== 基本设置 =====# 服务器端口(默认25565,一般不需要改)server-port=25565
# 服务器名称(会在服务器列表中显示)motd=A Minecraft Server
# 最大玩家数量max-players=20
# 游戏模式:survival(生存), creative(创造), adventure(冒险), spectator(旁观)gamemode=survival
# 难度:peaceful(和平), easy(简单), normal(普通), hard(困难)difficulty=normal
# 是否开启 PvP(玩家对战)pvp=true
# 是否允许飞行(创造模式下总是可以飞)allow-flight=false
# 世界名称level-name=world
# 种子(留空则随机生成,可以填入数字或字符串)level-seed=
# ===== 高级设置 =====# 视距(区块数量,越大越卡)view-distance=10
# 模拟距离simulation-distance=10
# 是否生成结构(村庄、要塞等)generate-structures=true
# 是否启用命令方块enable-command-block=false
# OP 权限等级(1-4)op-permission-level=4
# 是否启用白名单white-list=false
# 是否在线验证(正版验证)# true = 只允许正版账号加入# false = 允许盗版/离线账号加入online-mode=true
# 最大建筑高度max-build-height=256
# 是否允许下界allow-nether=true
# 是否允许末地allow-end=true
# 动物生成上限spawn-animals=true
# 怪物生成上限spawn-monsters=true
# NPC 村民生成spawn-npcs=true
# 是否启用出生点保护spawn-protection=16
# 玩家闲置超时踢出(分钟,0为不踢)player-idle-timeout=0
# 网络压缩阈值network-compression-threshold=256
# 是否启用查询功能enable-query=false
# RCON 远程控制台密码(如需远程控制)rcon.password=rcon.port=255752. 重要配置详解
游戏模式设置
gamemode=survival # 生存模式gamemode=creative # 创造模式gamemode=adventure # 冒险模式gamemode=spectator # 旁观模式玩家管理
# 最大玩家数(根据你的网络和电脑性能调整)max-players=10
# 白名单模式(只允许指定玩家加入)white-list=true
# 启用白名单后,需要在游戏中或用控制台添加玩家# 命令:/whitelist add 玩家名正版验证
# 如果你有正版账号,建议开启online-mode=true
# 如果朋友都是离线账号,需要关闭online-mode=false注意:
online-mode=false时任何人都可以用任意名字加入,存在安全风险
世界生成
# 自定义种子(可以网上找好看的种子)level-seed=123456789
# 或者使用文字种子level-seed=village_at_spawn
# 视距设置(影响性能和视野)# 低配电脑:6-8# 中等配置:10-12# 高配电脑:15-20view-distance=103. 保存配置
修改完 server.properties 后:
- 保存文件(Ctrl + S)
- 重新启动服务器(双击
start.bat) - 新的配置就会生效
第五步:连接到服务器
本地连接(同一台电脑)
- 启动 Minecraft Java 版客户端
- 点击”多人游戏”
- 点击”添加服务器”或”直接连接”
- 服务器地址输入:
localhost或127.0.0.1 - 点击”完成”或”加入服务器”
- 成功进入!
局域网连接(同一 WiFi 下的其他设备)
-
查找你的本地 IP 地址:
- 按
Win + R,输入cmd,回车 - 输入
ipconfig,回车 - 找到 “IPv4 地址”,类似
192.168.1.100
- 按
-
在其他设备上:
- 打开 Minecraft
- 多人游戏 → 添加服务器
- 服务器地址输入你的 IPv4 地址,如:
192.168.1.100 - 端口默认是 25565,如果没改就不用写
- 如果改了端口,格式为:
192.168.1.100:25565
外网连接(让互联网上的朋友加入)
这需要端口映射或内网穿透,比较复杂。
方法 A:路由器端口映射(需要公网 IP)
-
确认你有公网 IP
- 访问 https://ip.cn 查看你的公网 IP
- 登录路由器管理页面,查看 WAN 口 IP
- 如果两个 IP 相同,说明有公网 IP
-
登录路由器管理页面
- 浏览器输入路由器地址(通常是
192.168.1.1或192.168.0.1) - 输入管理员账号密码
- 浏览器输入路由器地址(通常是
-
设置端口映射/虚拟服务器
- 找到”端口映射”、“虚拟服务器”或”NAT 设置”
- 添加新规则:
- 外部端口:25565
- 内部端口:25565
- 内部 IP:你的电脑 IP(如 192.168.1.100)
- 协议:TCP 和 UDP(或选择”全部”)
- 保存
-
告诉朋友你的公网 IP
- 他们连接时输入:
你的公网IP:25565 - 例如:
123.45.67.89:25565
- 他们连接时输入:
注意:
- 每次重启路由器,公网 IP 可能会变化
- 可以考虑使用 DDNS(动态域名解析)
- 确保防火墙允许 25565 端口
方法 B:使用内网穿透工具(无需公网 IP)
如果运营商不提供公网 IP,可以使用内网穿透服务:
推荐工具:
- SakuraFrp:https://www.natfrp.com/(免费额度够用)
- Ngrok:https://ngrok.com/
- 花生壳:https://hsk.oray.com/
以 SakuraFrp 为例:
- 注册 SakuraFrp 账号
- 下载客户端
- 创建隧道:
- 隧道类型:TCP
- 本地 IP:127.0.0.1
- 本地端口:25565
- 启动隧道,获得一个域名
- 朋友连接时使用该域名
方法 C:使用第三方开服平台
如果觉得太麻烦,可以考虑:
- Aternos:https://aternos.org/(完全免费)
- Minehut:https://minehut.com/
- 腾讯云/阿里云:购买云服务器自己搭建
第六步:服务器管理
常用控制台命令
在服务器命令行窗口中可以直接输入命令:
# 查看帮助help
# 停止服务器(正常关闭)stop
# 保存世界save-all
# 备份世界save-off # 暂停自动保存save-on # 恢复自动保存
# 给予玩家 OP 权限op 玩家名
# 取消 OP 权限deop 玩家名
# 封禁玩家ban 玩家名
# 解封玩家pardon 玩家名
# 查看在线玩家list
# 更改游戏模式gamemode survival 玩家名gamemode creative 玩家名
# 传送玩家tp 玩家名1 玩家名2
# 广播消息say 大家好,欢迎来到服务器!
# 设置出生点setworldspawn
# 获取游戏规则列表gamerule
# 设置是否掉落物品gamerule keepInventory true
# 设置时间time set day # 白天time set night # 夜晚time set noon # 中午
# 设置天气weather clear # 晴天weather rain # 下雨weather thunder # 雷雨管理玩家权限
1. 使用 OP 权限
OP(Operator)是服务器管理员,拥有所有权限。
# 在控制台中op Steve
# 在游戏中(需要已经是 OP)/op Steve2. 使用白名单
只允许特定玩家加入:
# 启用白名单whitelist on
# 添加玩家到白名单whitelist add Stevewhitelist add Alex
# 移除玩家whitelist remove Steve
# 查看白名单列表whitelist list
# 重新加载白名单whitelist reload也可以在 server.properties 中设置:
white-list=true然后在 whitelist.json 文件中手动添加玩家 UUID。
安装插件(仅限 Paper/Spigot 服务端)
如果你使用的是 Paper 或 Spigot 服务端,可以安装插件来增强功能。
备份世界数据
定期备份非常重要!
手动备份
- 关闭服务器(输入
stop) - 复制整个服务器文件夹,或只复制
world、world_nether、world_the_end文件夹 - 粘贴到其他位置作为备份
- 重新启动服务器
自动备份脚本
创建一个 backup.bat 文件:
@echo offset backup_folder=D:\MC_Backupset server_folder=D:\MC_Serverset date_str=%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%%time:~6,2%set date_str=%date_str: =0%
if not exist "%backup_folder%" mkdir "%backup_folder%"
echo 正在备份服务器...xcopy "%server_folder%\world" "%backup_folder%\world_%date_str%" /E /I /Yxcopy "%server_folder%\world_nether" "%backup_folder%\world_nether_%date_str%" /E /I /Yxcopy "%server_folder%\world_the_end" "%backup_folder%\world_the_end_%date_str%" /E /I /Y
echo 备份完成!pause建议每周备份一次,或在重大更新前备份。
第七步:优化服务器性能
1. JVM 参数优化
修改 start.bat,使用更优的 JVM 参数:
@echo offjava -Xms4G -Xmx8G ^ -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 ^ -jar paper-1.20.1-xxx.jar noguipause2. server.properties 优化
# 降低视距(最影响性能)view-distance=8simulation-distance=8
# 减少实体数量spawn-animals=truespawn-monsters=truespawn-npcs=true
# 关闭不必要的功能enable-command-block=falsespawn-protection=0
# 调整 tick 速率(谨慎修改)max-tick-time=600003. 预生成世界
使用插件预先生成世界,避免玩家探索时卡顿:
安装后使用命令:
/chunky radius 1000/chunky start4. 清理无用数据
定期清理:
- 离线玩家的背包数据
- 多余的日志文件
- 旧的备份文件
常见问题及解决
1. 服务器启动失败
问题:双击 start.bat 后立即关闭
解决:
- 检查 Java 是否正确安装:
java -version - 检查 jar 文件名是否与启动脚本中一致
- 查看生成的日志文件(
logs文件夹) - 确保已同意 EULA(
eula=true)
2. 无法连接服务器
问题:提示”连接超时”或”无法连接到服务器”
解决:
- 检查服务器是否正在运行
- 确认 IP 地址和端口是否正确
- 检查防火墙是否阻止了 25565 端口
- 本地连接使用
localhost测试
开放防火墙端口:
- 控制面板 → Windows Defender 防火墙 → 高级设置
- 入站规则 → 新建规则
- 端口 → TCP → 特定本地端口:25565
- 允许连接
- 命名规则并保存
3. 服务器很卡
问题:TPS(每秒刻数)低于 20
解决:
- 降低视距(
view-distance) - 减少最大玩家数
- 限制红石装置和实体数量
- 安装优化插件(如 ClearLag)
- 增加分配的内存
- 预生成世界
4. 正版验证问题
问题:朋友无法加入,提示认证失败
解决:
- 如果都是正版账号:确保
online-mode=true - 如果有离线账号:改为
online-mode=false - 注意:离线模式存在安全风险
5. 端口被占用
问题:提示”Address already in use”
解决:
- 更改
server.properties中的server-port - 或找出占用端口的程序并关闭:
Terminal window netstat -ano | findstr :25565taskkill /PID 进程ID /F
6. 世界损坏
问题:服务器启动时提示世界损坏
解决:
- 从备份恢复
- 使用 MCEdit 等工具修复
- 删除损坏的区块文件(最后手段)
结语
恭喜你!现在你已经成功搭建了自己的 Minecraft Java 版服务器!
总结一下关键步骤:
- 安装 Java 环境
- 下载服务端核心文件
- 创建启动脚本并同意 EULA
- 配置
server.properties - 启动服务器并连接
- 设置端口映射(外网联机)
- 安装插件和优化性能
接下来你可以:
- 邀请朋友一起玩耍
- 探索各种插件和模组
- 学习更多服务器管理命令
- 定制专属的游戏体验
- 建立自己的社区
如果在搭建过程中遇到问题,可以:
- 查看服务器日志文件(
logs文件夹) - 在 Minecraft 中文论坛求助
- 加入相关的 QQ 群或 Discord 社区
祝你在 Minecraft 的世界里玩得开心!
相关链接:
- Minecraft 官网:https://www.minecraft.net/
- PaperMC 下载:https://papermc.io/
- SpigotMC 插件:https://www.spigotmc.org/
- Minecraft Wiki:https://minecraft.wiki/