快速开始
本文档面向 EnderRealm 开发者,说明如何搭建本地开发环境并参与项目开发。
环境要求
| 组件 | 版本 | 说明 |
|---|---|---|
| JDK | 21(必须) | 推荐 OpenJDK 或 Azul Zulu |
| Git | 最新版 | 需要支持子模块 |
| Python | 3.12(推荐) | 后端服务使用,其他 3.x 版本亦可 |
⚠️ JDK 版本直接决定服务端性能,不同版本之间可能存在巨大差距。生产环境使用 JDK 21,开发环境请尽量保持一致。
克隆仓库
本项目包含 Git 子模块,克隆时需一并初始化:
bash
git clone --recurse-submodules https://github.com/EnderRealmMC/EnderRealmServerCore.git如果已经克隆但未初始化子模块:
bash
git submodule update --init --recursive未初始化子模块将导致部分功能无法使用,自动化脚本也无法正常运行。
项目结构
├── EnderRealmServerCore/ # 核心插件
├── bedwars/ # 小游戏 - 空岛战争
├── disaster/ # 小游戏 - 灾难生存
├── BlockedInCombat/ # 小游戏 - 方块战斗
├── easy4form/ # 表单库
├── EnderRealmServerCoreBackend/ # Python 后端(FastAPI)
└── docs/ # 本文档站点(VitePress)启动开发服务器
两条命令即可完成搭建并启动:
bash
# 1. 构建所有模块并部署到 _server/ 目录
./gradlew setupDevServer
# 2. 启动开发服务器
./gradlew runDevServer常用命令
| 命令 | 说明 |
|---|---|
./gradlew setupDevServer | 构建并部署(增量) |
./gradlew setupDevServer -Pforce | 强制覆盖所有文件(包括运行时配置) |
./gradlew runDevServer | 启动开发服务器 |
./gradlew cleanDevServer | 清理开发服务器 |
后端服务
后端使用 FastAPI,依赖 uv 管理 Python 依赖。
bash
# 安装 uv(如尚未安装)
pip install uv
# 进入后端目录
cd EnderRealmServerCoreBackend
# 安装依赖
uv sync
# 启动服务(开发模式,热重载)
uv run uvicorn app.main:app --reload