# MindustryJavaModTemplate **Repository Path**: brutty/MindustryJavaModTemplate ## Basic Information - **Project Name**: MindustryJavaModTemplate - **Description**: Mindustry开源java模组样板 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-10 - **Last Updated**: 2026-09-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Mindustry Java Mod 模板 一个适用于 Mindustry 的 Java 模组开发模板,同时支持 Android 和 PC 桌面端。Kotlin 版本的模组模板请参见[此处](https://github.com/Anuken/MindustryKotlinModTemplate)。 ## 🚀 关键特性 - **跨平台支持**:构建产物可同时运行于 PC 桌面端和 Android 移动端。 - **开箱即用**:预配置 Gradle 构建脚本与 GitHub Actions CI,实现自动化打包。 - **轻量依赖**:正确区分 Mindustry 核心依赖引用方式,避免将冗余 API 打包进模组。 ## 📋 前置条件 - **JDK 17**(构建和运行所必需) - **Android SDK**(仅在本地构建跨平台版本时需要) - 需安装 API Level 30 - 需安装近期版本的 Build Tools(如 30.0.1) ## 🎮 运行方法 1. 完成项目构建(参见下方构建方法)。 2. 将生成的 `.jar` 文件放入 Mindustry 的模组目录(`mods` 文件夹)中,或在游戏内的模组管理界面直接导入该文件。 3. 重启游戏或加载模组即可体验。 ## 🛠️ 构建方法 ### 1. 桌面端测试构建(仅限 PC) 此方式最快捷,但生成的文件**无法在 Android 上运行**。 1. 确保已安装 JDK 17。 2. 运行构建命令: - Windows: `gradlew jar` - Linux/Mac: `./gradlew jar` 3. 构建产物位于 `build/libs` 目录下。 ### 2. 通过 GitHub Actions 构建(推荐) 此方式无需本地配置 Android SDK,由 CI 自动构建全平台兼容版本。 1. 将本项目代码推送至你的 GitHub 仓库。 2. 每次提交代码后,在仓库的 **Actions** 标签页中查看最新的构建任务。 3. 任务成功后,在页面底部的 **Artifacts** 区域下载构建产物(通常为仓库名称的压缩包)。 4. 解压并获取其中的 `.jar` 文件,该文件可同时在 Android 和 PC 上运行。 ### 3. 本地全平台构建 适用于有 Android 开发经验、希望在本地直接打包全平台版本的开发者。 1. 下载并解压 Android SDK,设置环境变量 `ANDROID_HOME` 指向其根目录。 2. 确保安装了 API Level 30 及对应版本的 Build Tools(如 30.0.1)。 3. 将 Build Tools 目录添加到系统 `PATH` 中(例如:`$ANDROID_HOME/build-tools/30.0.1`)。 4. 运行构建命令: - Windows: `gradlew deploy` - Linux/Mac: `./gradlew deploy` 5. 构建产物位于 `build/libs` 目录下,可直接用于 Android 和 PC。 ## 📦 依赖添加说明 在添加 Mindustry、Arc 或其子模块的依赖时,**必须在 Gradle 中声明为 `compileOnly`**,绝不能使用 `implementation`。 - **`implementation`**:会将整个依赖库打包进最终的 `.jar` 文件中。对于 Mindustry 核心依赖,这会导致模组体积臃肿并引发严重的冲突问题。 - **`compileOnly`**:仅在编译时依赖该库,不会将其包含在最终产物中(因为游戏本体已经包含了这些库)。 **例外情况**:只有当你需要将一个** Mindustry 中不存在的第三方 Java 库**随模组一起打包时,才使用 `implementation`。 ## 📄 许可证 本项目为开源模组模板,具体许可证信息请查阅仓库中的 `LICENSE` 文件。