Mindustry 从克隆到开玩:自动化塔防游戏安装配置指南(JDK 17 实操版)
2026/9/5 11:42:04 网站建设 项目流程

Mindustry 从克隆到开玩:自动化塔防游戏安装配置指南(JDK 17 实操版)

【免费下载链接】MindustryThe automation tower defense RTS项目地址: https://gitcode.com/GitHub_Trending/min/Mindustry

Mindustry 是一款用 Java 写的自动化塔防 RTS:你建基地、拉产线、造炮塔,在科幻行星上边生产边防守。这篇文章我带你从空环境开始把它跑起来——先核配置,再拉源码,现场构建,卡壳的地方我当场给你排掉,最后把联机服务器也带起来。

🖥️ 装之前:先把三个硬性条件核掉

Mindustry 系统最低要求与推荐配置

项目最低要求推荐配置
操作系统Windows 7 / macOS 10.12 / Ubuntu 16.04最新稳定版
JavaJDK 17(必须是 17)JDK 17
内存2GB4GB 以上

注意 Java 这一行:Mindustry 只认 JDK 17,其他版本会直接构建失败,这一步省了后面很多折腾。

Java 17 版本检查与 JAVA_HOME 设置

先在终端跑这条命令,看当前环境里 Java 到底是哪个版本:

java -version

输出里带17就过关,直接往下走。如果你装过多个 Java,需要把JAVA_HOME指向 17 的安装目录(不是它下面的bin目录):

export JAVA_HOME=/usr/lib/jvm/temurin-17

这条export只在当前终端生效;想永久生效就写进~/.bashrc,Windows 则在"系统属性 → 环境变量"里新建JAVA_HOME变量。设置完关闭终端重开,再跑一次java -version确认。

内存方面,2GB 是底线:构建和运行游戏是两个独立进程,内存会叠加占用,4GB 以上才从容,跑之前把浏览器这类大户先关掉。

📦 拿原料:把 Mindustry 源码拉到本地

git 克隆 Mindustry 源码到本地

为什么非要拉源码?因为桌面客户端和联机服务器都要从同一份 Java 源码现场编译,构建产物才会分别落在desktop/server/两个模块的 build 目录里,没有现成 jar 可以直接下载。

在你想放游戏的目录里跑这条命令,git 会把远端仓库完整拷到本地一份:

git clone https://gitcode.com/GitHub_Trending/min/Mindustry

首次克隆文件比较多,速度取决于网速。完成后你会得到一个Mindustry文件夹,后面所有命令都在这个文件夹的根目录里执行,先cd Mindustry进去。

🏗️ 第一次构建桌面版:把源码打成能玩的 jar

Gradle 是什么:gradlew desktop:dist 构建命令

Gradle 是 Java 项目里最常用的自动构建工具,大白话讲它是个"打包工人":把散落的 Java 源码编译好、把美术音画资源装进同一个 jar 文件,你才不用手动装它——仓库根目录自带gradlew包装脚本,首次调用会自动拉起对应版本的 Gradle。现在跑这条命令:

./gradlew desktop:dist

这条命令让 Gradle 编译整个项目并打包出可执行 jar,首次构建会花相当长时间,因为后台在下载大量依赖,别盯着进度条慌。

构建成功后,desktop/build/libs/Mindustry.jar里躺着一个自包含所有依赖和资源的 jar 文件,双击或命令行都能启动它。

Mindustry 桌面版启动方式与免打包运行

java -jar desktop/build/libs/Mindustry.jar

这条命令直接拉起刚打包好的游戏,首次启动会创建用户配置目录并加载地图列表,能看到主菜单就说明构建成功了。如果只想快速试跑、不想打包,还有一条更省事的命令:

./gradlew desktop:run

它让 Gradle 直接拉起游戏进程,省去打包步骤,调试时最方便。Windows 把命令里的./gradlew换成gradlew即可。

🩹 第一次构建最容易卡住的三个问题

JAVA_HOME 未设置报错处理

如果构建命令一执行就提示JAVA_HOME is not set,这是终端找不到 Java 17 的 JDK:按前面"Java 17 版本检查"一节设置好环境变量,指向 JDK 17 的安装根目录而不是bin子目录。设置完关闭终端重开再跑刚才的构建命令,java -jar启动时报同样的错误也是这么处理。

首次 Gradle 构建卡住原因与加速配置

进度条停在某个百分比很久没动,通常是 Gradle 在下载依赖,等它走完就行,国内网络不佳可以配置镜像源加速下载。仓库根目录的gradle.properties里已经启用了守护进程(org.gradle.daemon=true)和构建缓存(org.gradle.caching=true),所以第二次构建会明显变快。中途别用 Ctrl+C 打断,打断后重跑命令会自动续传,不会白等。

Permission denied 权限报错处理

Linux/macOS 上跑./gradlew提示Permission deniedCommand not found,这是脚本缺执行权限:跑下面这条命令加一次权限就行,一次性操作:

chmod +x ./gradlew

Windows 走gradlew.bat,不受这个影响。

🌐 跑给别人玩:服务器版构建、启动与客户端接入

桌面版与服务器版的区别

服务器版只有游戏逻辑和网络服务,不渲染画面、不出声音,占内存少,适合长期挂着跑;桌面版则包含完整画面、音效和操作界面,适合自己单机,也是联机时的客户端。一个负责"跑局",一个负责"看局",想开房就得两个都备着。

服务器版 server:dist 构建与 server-release.jar 启动

./gradlew server:dist

这条命令把服务器逻辑单独打包,过程会跳过精灵图、音乐、音效等纯客户端资源,产物在server/build/libs/server-release.jar。接着运行它把服务器拉起来:

java -jar server/build/libs/server-release.jar

启动后服务器监听端口等待客户端接入,首次运行会在当前目录生成配置文件夹;仓库里还附带server_template/run_server.shrun_server.bat两个一键启动脚本,内容就是这条java -jar命令的封装。

桌面客户端加入自建服务器

客户端在联机入口填入服务器地址即可加入:同一台机器用127.0.0.1,跨机器用服务器的实际 IP,端口号从服务器终端输出里取。连上之后客户端界面会显示联机玩家列表,多开两个窗口一个跑服务器一个当客户端,就能立刻测通整条链路。

到这里单机和联机都通了。下一步你可以逐张打通战役关卡、练一条完整的自动化产线,或者把自建服务器长期挂起来给好友;想换界面语言的话,core/assets/bundles/里已经备好了中文等多国语言包,在设置里切换即可。

【免费下载链接】MindustryThe automation tower defense RTS项目地址: https://gitcode.com/GitHub_Trending/min/Mindustry

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询