XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFEServerManager

【Java】我的世界XFE服务器管理器

公开
关注 0 Fork 0 Star 0
UTF-8

构建与发布

仓库不依赖全局 Gradle;根工程和四个平台均提交各自 Wrapper。Node.js 只用于生成嵌入 JAR 的管理界面。

本地完整构建

Linux:

export JAVA_HOME_17=/path/to/jdk-17
export JAVA_HOME_21=/path/to/jdk-21
bash scripts/verify-wrappers.sh
bash scripts/build-all.sh 1.0.0

Windows PowerShell:

.\build-all.cmd

直接运行时,Windows 脚本读取四个平台 gradle.properties 中的 mod_version,并要求它们保持一致,然后构建 Web UI 与四个 JAR。-Version 2.0.0 仅用于临时覆盖配置版本,不是必填项。需要同时执行 Web 与 Java 测试时使用 .\build-all.cmd -WithTests。脚本会自动寻找 JDK 17/21 以及 ForgeGradle Mavenizer 所需的 JDK 25+;也可用 -Java17Home-Java21Home-ToolJavaHome 显式指定。先运行 .\build-all.cmd -PreflightOnly 可以只检查环境而不构建,重复开发构建可增加 -SkipNpmInstall

脚本依次校验 Wrapper、构建 Web UI,然后用 JDK 17 构建 1.20.1、用 JDK 21 构建其余三个版本;-WithTests 还会运行 Web、公共 Java 与平台测试。最终目录只包含四个可分发 JAR 和 SHA256SUMSslim、sources 和 javadoc JAR 不会被误发布。

CI 与发布

仓库中的 .github/workflows/ci.yml 面向 GitHub Actions 和 GitHub Release。若主 Git 远端托管在不提供兼容 Actions 的自建服务上,必须另行配置受保护的 GitHub/兼容镜像与发布凭据;不能假定仅推送该主远端就会运行这套流水线。未配置镜像时应使用上面的本地完整构建脚本并人工保管校验和,但这不替代 CI 证据。

  • Wrapper 同时由 Gradle 官方校验数据库和仓库固定 SHA-256 校验。
  • 公共模块在 Ubuntu 与 Windows 测试,覆盖 SQLite 原生库加载和跨平台路径。
  • Web UI 与四个 Forge 根并行形成独立构建证据。
  • v* 标签触发 GitHub Release;标签去掉前导 v 后作为模组版本。
  • Release 包含四个 JAR、CycloneDX JSON SBOM 和覆盖全部资产的 SHA256SUMS

发布标签只应指向已通过专服启动、原版客户端握手、优雅停止和数据库重启恢复验收的提交。CI 编译成功不能替代这四项运行时验证。

产物命名

xfeservermanager-forge-1.20.1-<version>.jar
xfeservermanager-forge-1.20.6-<version>.jar
xfeservermanager-forge-1.21.1-<version>.jar
xfeservermanager-forge-1.21.11-<version>.jar

不要重命名一个版本的产物并用于另一个 Minecraft 版本。