User Tools

Site Tools


zh_cn:tutorial:setup

This is an old revision of the document!


配置模组开发环境

前置

  • Java 16(推荐)的 JDK(即用于开发 Java 的工具,安装器可参考 https://adoptium.net/releases.html
    • 专业用户可以从 http://jdk.java.net/ 获取JDK,主义需要手动解压并设置系统变量。
  • 任意 IDE(集成开发环境):如 IntelliJ IDEAEclipse,也可使用任何可编辑代码的文本编辑器,如 Visual Studio Code
    • 如果对这些不熟悉,推荐使用 Intellij IDEA,绝大多数开发者都用这个编写模组。

MinecraftDev IntelliJ IDEA插件

如果你使用 IntelliJ IDEA,你可以使用 MinecraftDev 插件。该插件支持自动生成 Fabric 项目以及一些与 Mixin 有关的功能,如检查、生成存取器(accessor)和影子(shadow)字段,复制 Mixin 目标参考(JVM 描述符)。你可以在再文件(File) → 设置(Settings) → 插件(Plugins)中打开内部插件浏览器,找到并安装这个插件,只需要在搜索框里搜索“Minecraft”,选择第一个结果安装即可。

配置步骤

主要有两种新建 Fabric 模组开发环境的方法:你可以手动下载 fabric-example-mod(示例模组模板)并自行配置,也可以使用一些工具来自动设置。

部分地区的用户可能会发现,由于网速原因,构建 Gradle 速度可能比较慢。对于中国内地用户,可参考加快 Fabric 模组构建速度的教程加速 Fabric 模组依赖拉取以及环境搭建教程

注意:mcdev 插件中的默认模板会盲目使用最新的不稳定的 loom 版本,请谨慎使用。

手动步骤

  1. 复制 fabric-example-mod 中的初始文件(Kotlin 用户也可使用 Kotlin 版,此外,若因网速原因而构建时间较长的,也可以使用 使用其他下载源构建的 fabric-example-mod),并删除 LICENSE(许可证)及 README.md(简介)文件,因为它们只应用于模板自身,而非你的模组。
  2. 编辑 gradle.properties:
    • 确保将 archives_base_namemaven_group 设为你喜欢的值。
    • 确保更新 Minecraft、映射、加载器和 loom 的版本——可以在https://fabricmc.net/versions.html查询。
    • 添加你需要在在 build.gradle 中使用的其他依赖。
  3. build.gradle 导入到你的 IDE 中(各 IDE 操作各有不同,具体见下)
  4. 配置完成!祝武运昌隆(bushi

你也可以生成MC的源文件来作为参考(不过 IDEA 已经自带反编译功能,所以生成不生成都随意): 运行 Gradle 任务 genSources(生成源文件),如果你的 IDE 不集成 Gradle 支持的话则需要在控制台/终端/命令提示符中输入 gradlew genSources(在 Linux 或 macOS 上则是 ./gradlew genSources

如果你没法使用 MinecraftDev 插件或 fabric-example-mod 模板的话,也可以使用 ExtraCraTX 制作的 GeneratorFabricMod,一个用于自动生成 Fabric 模组的工具。请遵循以下步骤:

  1. 这里下载 GeneratorFabricMod 并解压。
  2. 创建一个新目录,并打开一个新的终端/命令提示符窗口并输入 到/GeneratorFabricMod/的/路径/bin/GeneratorFabricMod
  3. 在它获取完所有的前置项后,按照屏幕上的指示输入所需的信息。
  4. 完成之后用你的 IDE 打开即可完成安装。

IntelliJ IDEA

如果你使用的是 IntelliJ IDEA,请遵循以下步骤:(注:中文文本可能会因为 IDEA 或中文插件的版本不同而不同)

  1. 在 IDEA 的主菜单里选择“打开或导入…(Import Project)”(如果已经打开了一个项目,选择位于顶端的“文件→打开…”)。
  2. 选择项目的 build.gradle 文件以导入项目。
  3. 在 Gradle 配置完成后,关闭并重新加载项目,否则有些运行配置可能无法正常显示。
  4. (如果运行配置还没有出现,试试在 Gradle 页面里重新导入项目。)

可选,但推荐做的一件事: IDEA 默认使用 Gradle 来构建你的项目,而这在 Fabric 是不必要的,而且它会导致构建时间变长以及热替换(hotswapping)相关的种种问题。以下是让 IDEA 使用默认编译器的步骤:

  1. 在 Gradle 页面里打开“Gradle 设置(Gradle Settings)”
  2. 将“使用此工具构建和运行(Build and run using)”和“使用此工具运行测试(Run tests using)”选项改成“IntelliJ IDEA”。
  3. 进入 文件(File)→ 项目结构…(Project Structure…)→ 项目(Project)然后将模块编译输出路径(Project compiler output)改成$PROJECT_DIR$/out

不幸的是,目前还不能给“使用此工具构建和运行”和“使用此工具运行测试”设置一个全 IDE 内的默认值,所以这些每创建一个新项目都得重复上述步骤。

注:*千万* 不要运行 idea 的 gradle 任务,已知它会破坏开发环境。

Eclipse

如果你使用的是 Eclipse,并且想要生成IDE的运行设置,请运行 gradlew eclipse。The project can then be imported as a normal (non-gradle) Eclipse project into your workspace using the 'File' - 'Import…' menu, then 'General' → 'Existing Projects into Workspace'.

Visual Studio Code

如果你使用的是 Visual Studio Code,请参照这篇教程

生成 Minecraft 源代码

Reading the Minecraft source is an essential part of modding. Unfortunately, we can't publish the Minecraft source because it violates the Minecraft EULA. You need to generate the Minecraft source yourself.

To generate the Minecraft source. run the genSources gradle task. If your IDE doesn't have gradle integration, run the following command in the terminal: gradlew genSources (or ./gradlew genSources on Linux/MacOS). It can take a while depending on your computer power. You may need to refresh gradle after running the task.

如何阅读源代码,可参考此教程

新手入门

入门可以先尝试添加一些物品方块。另外,建议了解一下如何在不重启 Minecraft 的情况下应用更改,以便调试。

建议

  • 虽然 Fabric API 并不是必需的,但其最首要的目标是提供MC游戏引擎所不提供的跨模组兼容性和 hooks,所以我们强烈推荐多使用 Fabric API。本Wiki上的许多教程也会默认使用 Fabric API。
  • 随着 fabric-loom(我们的Gradle构建插件)的开发和改动,有些时候你可能会遇上一些通过重置 Gradle 缓存才能解决的问题。使用 gradlew cleanloom 便能清理缓存,而 gradlew --stop 则能帮助你解决一些其他疑难杂症。
  • 问问题不要犹豫,有问题就问,总有人会帮你解决的。(笑

故障诊断

缺少声音

有时当 IDE 在导入 Gradle 项目的时候有些游戏素材不会正常下载。如果遇到这种情况则要手动运行 downloadAssets 任务——既可以使用 IDE 的自带菜单也可以直接执行 gradlew downloadAssets

zh_cn/tutorial/setup.1634312315.txt.gz · Last modified: 2021/10/15 15:38 by solidblock