跳至主要內容

配置 fabric 开发环境

大约 3 分钟

配置 fabric 开发环境

配置个环境也这么麻烦..

记下来以防万一

首先这是总的参考:https://fabricmc.net/develop/open in new window

次要参考,更详细:https://fabricmc.net/wiki/zh_cn:tutorial:setupopen in new window

安装java

安装器可参考

配置 VSCode

当然用万能的VSCode啦

搜索 java 扩展,安装 Extension Pack for Java 就行了

image.png
image.png

然后搜索 gradle 扩展,安装 Gradle for Java

image.png
image.png

下载项目模板

打开 项目模板生成器open in new window

模组名就填模组名就行

包名其实就是命名空间,虽然可以随便填,但是建议按照java的命名规范来,例如你有个域名叫foo.net,模组名是test-bar,那么包名就可以是net.foo.testbar啥的

版本不用说

高级选项默认就行

下载完毕后,找一个你喜欢的地方新建一个空文件夹,把压缩包解压进去

它应该是这样

image.png
image.png

打开项目并配置

用 VSCode 打开这个文件夹,它会自动开始配置,不过不用管它,我们需要先手动修改gradle的配置,稍后再重新打开

开头可能卡在一个gradle-8.8-bin.zip下载半天下不好,可以打开gradle\wrapper\gradle-wrapper.properties修改里面的distributionUrl

你可以

  • 改为镜像源,例如distributionUrl=https://mirrors.cloud.tencent.com/gradle/gradle-8.8-bin.zip
  • 下载到本地,然后把本地路径改成distributionUrl=file:///path/to/gradle-8.8-bin.zip

这里的`:`前面可以加上反斜杠以增加兼容性

可以在gradle.properties文件中配置java路径

org.gradle.java.home=C:/path/to/your/jdk-home

把梯子也加上,不然会很慢甚至构建不了,具体参考这个

systemProp.http.proxyHost=127.0.0.1
systemProp.http.proxyPort=7897
systemProp.https.nonProxyHosts=10.*|localhost

systemProp.https.proxyHost=127.0.0.1
systemProp.https.proxyPort=7897
systemProp.https.nonProxyHosts=10.*|localhost

接下来就可以关闭VSCode,重新打开,它会自动配置gradle了

进一步配置并运行游戏

等待配置完成,点击左边的 Gradle 图标,会发现里面的 Tasks 多了很多任务,点击 Tasks 里面的 ide -> vscode,它就会生成 VSCode 的配置

相关信息

也可以在终端中运行./gradlew vscode来生成配置

点击左边的运行和调试,会发现里面多了Minecraft ClientMinecraft Server两个配置

相关信息

也可以在终端中运行./gradlew runClient来运行客户端,./gradlew runServer来运行服务器

为了能运行MC,接下来生成资源,点击 Tasks 里面的 fabric -> genSources,它就会开始下载所需的 Minecraft 资源,它会下载到C:/Users/[YourUsername]/.gradle/caches/fabric-loom文件夹下,保证下次不需要重复下载

相关信息

也可以在终端中运行./gradlew genSources 来生成资源

然后点击Minecraft Client就会运行客户端,点击Minecraft Server就会运行服务器,所有文件都在run文件夹下

相关信息

可能会遇到控制台输出中文会乱码的问题,这是因为 Windows 的控制台默认编码是GBK,而 gradle 的输出默认是UTF-8,所以需要修改输出为GBK(修改终端的编码也行)

比较简单的方式是在启动参数里指定编码,可以在命令行里加上,就这个例子而言,我们可以直接修改 VSCode 的 debug 配置

打开.vscode/launch.json文件,在对应项(例如"name": "Minecraft Client")的vmArgs末尾加上-Dfile.encoding=GBK

相关信息

你也可以指定用户名

args里面加上--username [YourUsername]即可

最后看起来大概是这样(里面那\u003d就是=的转义,路径的\\也可以替换成/)

{
  "version": "0.2.0",
  "configurations": [
    {
      "type": "java",
      "name": "Minecraft Client",
      "request": "launch",
      "cwd": "${workspaceFolder}/run",
      "console": "integratedTerminal",
      "stopOnEntry": false,
      "mainClass": "net.fabricmc.devlaunchinjector.Main",
      "vmArgs": "-Dfabric.dli.config\u003dC:\\Users\\sch246\\Downloads\\named-entities-template-1.21@@0020(1)\\.gradle\\loom-cache\\launch.cfg -Dfabric.dli.env\u003dclient -Dfabric.dli.main\u003dnet.fabricmc.loader.impl.launch.knot.KnotClient -Dfile.encoding=GBK",
      "args": "--username sch233",
      "env": {},
      "projectName": "named-entities-template-1.21 (1)"
    },
    // ...
  ]
}

结束。

评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v3.0.0-alpha.10