跳转到主要内容

适用于 Minecraft 的 Java (JRE/JDK)的安装与选择

什么是 Java ?什么是 JRE ?什么是 OpenJ9?


Java 是一种广泛使用的计算机编程语言,Java 版 Minecraft 是用 Java 编写的,因此游玩 Java 版 Minecraft 需要安装 JRE。

JRE (Java Runtime Enviromnent) [Java运行时环境] 是运行使用 Java 语言编写的软件的必备环境。
JDK (Java Development Kit) [Java开发套件],是供开发者使用的套件,有一些开发用的功能,JDK 内包含了 JRE。
JVM (Java Virtual Machine) [Java虚拟机] 是 JRE 的一部分,所有 Java 程序都运行在 JVM 中。

我们平时说的安装 Java,其实是安装 JRE。

OpenJ9 是不同于 HotSpot (OpenJDK中的标准JVM) 的一个 JVM,在内存管理方面领先 HotSpot 。经过测试,使用 OpenJ9 能在一定程度上减少 Minecraft 客户端的内存占用,但可能增加 CPU 的使用率,所以不建议在笔记本等 CPU 性能较弱的电脑上使用。

 

Minecraft 的 Java 版本需求


一般情况下 Minecraft 原版的 Java 版本需求如下:

  • 运行 1.0 - 1.12 的原版需要使用 Java7 或 Java8
  • 运行 1.13 - 1.16 的原版可以使用 Java8,或 Java11 - Java15 等高版本 Java,使用高版本 Java 可以在一定程度上提高性能(启动器不一定支持)。
  • 运行 1.17+ 原版和模组均需要使用 Java16 等更高版本的 Java。

一般情况下 Minecraft 模组的 Java 版本需求如下:

  • 运行 1.0 - 1.13 的 FabricMC、Minecraft-Forge 需要使用 Java7 或 Java8
  • 运行 1.14 - 1.16 的 FabricMC、Minecraft-Forge 最好使用 Java8,也可以使用 Java11 - Java15 等高版本 Java,使用高版本 Java 可以在一定程度上提高性能,但有部分模组不支持,同时也可能有模组需要更高版本的 Java。
  • 运行 1.17+ 原版和模组均需要使用 Java16 等更高版本的 Java。

实际上上 PaperMC 服务端已在 Paper 1.16.5 build 669 和之后版本要求使用 Java16,Paper 团队还建议运行最稳定的最新 JVM(可以理解为更高版本的 Java)。我们也推荐尽量使用高版本的 Java(前提是兼容性没问题)。

*HMCL 启动器在 3.3.183 之前的版本需要 JavaFX。

 

各种 JRE/JDK 的选择


Java 是 Sun 公司发明的,2006 年末 Sun 公司宣传将开放 Java 源代码。
2009 年 Oracle 公司收购了 Sun 公司。而 Sun 公司在被收购的几天前发布了 OpenJDK,即开源版本的 JDK。
由于 OracleJDK 正统且免费性能好,于是大家都开始用 OracleJDK。但后来由于 Oracle 公司对于 Java 社群的不友善和商业化,逐渐催生了许多基于 OpenJDK 的第三方 JDK。

目前流行的 JDK 有: OracleJDKOpenJDKLibericaZuluRedHatOpenJDKAdoptOpenJDK(提供 Openj9)、GraalVM(其实不是 JDK,但它有Jvm)等。

不同的 JDK 细节表现、性能、支持的系统/内存各有差别,你可以查看测评或自行测试来决定使用哪一个。

玩 Minecraft 推荐使用:OracleJDK 或 Zulu 或 GraalVM

 

32 位和 64 位的选择


时至今日,你应该无条件安装 64 位 JRE。现代 X86 架构处理器都是 64 位的。

32 位版本在 Windows 下仅能分配大约 1.5G 内存,这对 Minecraft 来说是远远不够的。

如果你的系统不是 64 位的,那么我们强烈建议你重装为 64 位系统。

 

下载与安装


你并不需要“安装”Java,只需要解压到任意文件夹即可。

由于 Minecraft 1.0-1.16 兼容 Java8, 但 1.17 却需要 Java16。目前大部分应用仍然兼容或需要 Java8,
因此本文推荐用安装程序安装 Oracle JRE 8 和以解压的方式“安装” Zulu JRE 16。

使用安装程序安装仅仅是多了环境变量、更新升级之类的东西,本质上和解压没有什么不同。
使用解压的方式安装是为了避免环境变量混乱,导致版本错乱不好管理等。

例如:通常的启动命令是 java -jar xxx.jar 但你可以用 java路径/bin/java.exe -jar xxx.jar 来代替,其他系统可能没有 .exe 后缀,但本质是一样的。

 

 

A.安装 Oracle JRE 8

此版本自带 JavaFX。

1.访问https://www.java.com/zh-CN/download/manual.jsp

2.点击并下载Windows 脱机 (64 位) 其他系统请下载对应文件(点击图片可以放大)。

image-1631775365011.png

3.打开下载好的jre-8uxxx-windows-x64.exe,点击安装

4.安装完成,默认安装目录在C:\Program Files\Java\jre1.8.0_xxx(1.8.0 或 8.0.x 代表 Java8,16.0.x 代表 Java16)。

image-1631775729168.png

*这里安装的是 JRE,如果需要 JDK 请至 https://www.oracle.com/cn/java/technologies/javase-downloads.html 下载。
*Oracle JRE/JDK 商业应用需要收费。

 

B.安装 Zulu JRE 16

所有版本的解压方式安装都是一样的,请照葫芦画瓢。
选择带 FX 的选项即包含 JavaFX。

1.访问 https://www.azul.com/downloads/ 并拉到页面底端。

2.如图选择 Java 16(STS) 、Windows X86 、64-bit JRE-FX,其他系统请选择对应选项(点击图片可以放大)。

image-1631775440335.png

3.选择完后点击 .Zip 下载压缩包。

image-1631775466070.png

4.用压缩软件打开,解压到C:\Program Files\Java(或你熟悉的目录)。

5.安装完成,安装目录在C:\Program Files\Java\zulu16.xx.xx-ca-fx-jre16.0.x-win_x64

image-1631775805856.png

*这里安装的是 JRE,如果需要 JDK 请选择 JDK 下载。
*Zulu JRE/JDK 商业应用免费。

 

如果你是带独立显卡的笔记本,别忘了在系统的图形设置里将刚刚安装的 java.exejavaw.exe 设置为高性能。

 

在 Minecraft 启动器中使用


一般来说,第三方启动器会自动检测到你安装的 JDK/JRE。
但由于我们使用手动的方式安装了 Zulu 16,部分启动器可能检测不到,所以我们需要手动指定 Java 目录来让启动器使用。

如果你使用官方启动器,那么你不需要操心这些,因为官方启动器自带 JRE。

这里用 Zulu 16 做举例,如果你安装了其他版本的 Java,同理选择其他版本即可。

 

MultiMC

支持 Windows、Linux、macOS 系统。
下载地址:https://multimc.org
*不建议更改全局设置。

1.右键要更改的实例,选择编辑实例(点击图片可以放大)。

image-1631776238551.png

2.点击设置 勾选 Java安装 点击 浏览…

image-1631776287794.png

3.找到C:\Program Files\Java\zulu16.xx.xx-ca-fx-jre16.0.x-win_x64\bin 文件夹里的 javaw.exe 并选择。
注意 zulu16.xx.xx-ca-fx-jre16.0.x-win_x64 会根据你安装的版本改变,请选择正确的文件夹。
(其他系统请选择 路径/bin/java)(1.8.0 或 8.0.x 代表 Java8,16.0.x 代表 Java16)。

image-1631776446069.png

4.更改完成,点击关闭即可。

 

HMCL

支持 Windows、Linux、macOS 系统。
下载地址:https://hmcl.huangyuhui.net/download(请下载开发版)
*不建议更改全局设置,请先打开版本隔离,可以参考这篇文章

1.点击版本列表,找到要修改的游戏版本,点击右边的:(点击图片可以放大)。

image-1631776763967.png

2.选择游戏管理

image-1631776901313.png

3.勾选启用游戏特定设置(不影响其他游戏版本),点击 Java 路径 右边的 V

image-1631777245561.png

4.A.如果你运气好的话,启动器已经自动检测到了 Java16,选择 16.0.2 即可(1.8.0 或 8.0.x 代表 Java8,16.0.x 代表 Java16)。

image-1631777377627.png

4.B.如果你运气不好,启动器没有检测到 Java16,那么请点击 自定义,然后点击右边的文件夹图标

image-1631777636713.png

4.B.1.找到C:\Program Files\Java\zulu16.xx.xx-ca-fx-jre16.0.x-win_x64\bin 文件夹里的 javaw.exe 并选择。
注意 zulu16.xx.xx-ca-fx-jre16.0.x-win_x64 会根据你安装的版本改变,请选择正确的文件夹。
(其他系统请选择 路径/bin/java)(1.8.0 或 8.0.x 代表 Java8,16.0.x 代表 Java16)。

image-1631776446069.png

5.完成,返回即可

 

PCL 2

支持 Windows 系统。
下载地址:https://afdian.net/@LTCat
*不建议更改全局设置,请先打开版本隔离,可以参考这篇文章

1.点击设置,然后点击自动搜索

image-1631778212074.png

2.运气好的话你应该能看到 Java 8 和 Java16,交由启动器自动判断即可(1.8.0 或 8.0.x 代表 Java8,16.0.x 代表 Java16)。

image-1631778252198.png

3.如果你运气不好,启动器没有检测到 Java16,或是选择了错误的 Java 版本。
3.1.点击设置,然后点击手动导入PCL2 真难用居然不能再版本里选择

image-1631778782978.png

3.3.找到C:\Program Files\Java\zulu16.xx.xx-ca-fx-jre16.0.x-win_x64\bin 文件夹里的 javaw.exe 并选择。
注意 zulu16.xx.xx-ca-fx-jre16.0.x-win_x64 会根据你安装的版本改变,请选择正确的文件夹。
(其他系统请选择 路径/bin/java)(1.8.0 或 8.0.x 代表 Java8,16.0.x 代表 Java16)。

3.4.没有意外的话,Java 版本列表里面应该已经有了 Java 16,并显示手动导入。

image-1631778967289.png

3.5.返回启动点击版本选择

image-1631778502513.png
3.6.找到要修改的版本,点击右边的齿轮按钮

image-1631778624708.png

3.7.在 游戏 Java 处选择合适的 Java

image-1631779028952.png

4.完成

 

仍然有不明白的地方?
欢迎留言提出建议。