本文章介绍的是如何更新Java。关于Minecraft的Java版本,请见“Java版”。
更新Java是游玩Minecraft时最重要的事情之一,因为有些技术性漏洞只能通过更新Java来解决。
Minecraft启动器和Java版本1.8.0_51绑定(MacOS上为1.8.0_74),默认使用此版本;21w19a至1.18-pre1绑定Java 16.0.1;1.18-pre2至22w17a绑定Java 17.0.1;22w18a及以上版本绑定Java 17.0.8。
可以从个人资料的选项菜单来更改Java版本。
目录
1什么是Java?2为什么要更新?3下载地址3.1注释4安装5备注6已知问题7参考什么是Java?[]
Java是一门编程语言和一个运行平台。不像其他语言,Java并不是直接运行在硬件上,而是运行在一个叫作JVM的虚拟机里。Java版就是用Java编写的[1],其被用于游戏逻辑的架构,渲染以及网络连接。
截至2023年9月19日,最新的Java稳定版为1.8.0_381(Oracle JDK)/1.8.0_382(OpenJDK)(长期支持版,LTS)、11.0.20(LTS)、17.0.8(LTS)、21(LTS)。 官方启动器只能使用与游戏要求最低Java版本的主要版本一致的JVM才能启动17w13a及以上版本的游戏。[2]
为什么要更新?[]
最新版本的Java包含了重要的增强功能以增强性能、稳定性以及运行在你的机器上的Java程序的安全性。安装最新的Java更新将会确保Minecraft继续安全高效地运行。
不同Minecraft版本对Java版本的最低要求不同。Java版1.12(17w13a)至Java版1.16.5(1.17:21w18a)需要Java 8启动游戏。[3]Java版1.17(21w19a)至Java版1.17.1(1.18:1.18-pre1)需要Java 16启动游戏。[4]自Java版1.18(1.18-pre2)起需要Java 17启动游戏。[5]Minecraft在非对应版本的Java上运行有时候会崩溃。更新会修复许多的问题和漏洞,通常情况下会带来性能的提升。例如,新的垃圾回收机制可以在内存占用率很高的时候降低发生卡顿的概率。运行服务器需要你的计算机安装正式版的Java,参见教程/架设服务器。下载地址[]
你可以从甲骨文公司或构建OpenJDK的人那里获得Java。对于Minecraft来说,两者基本上是相同的,但Oracle的OTN版本需要一个付费的许可证用于商业和生产。如果你通过直播Minecraft赚钱,或者运营(即使是公益的)服务器,你必须使用OpenJDK。
对于Mac系统,可以直接从系统偏好设置\Java
的位置按照提示更新Java。
你会看到,Java分为LTS(长期支持)如17和STS(短期支持)如18的版本号。LTS版本的维护时间会更长,所以人们倾向于将其作为“现代但不算太新”的Java的稳定标准。
注释[]
2019年1月(8u211)的授权变更也是Minecraft的官方启动器停留在j8u51的原因之一。Java 9至Java 16(除Java 11)不再受到甲骨文的支持,它们不再收到公共安全更新,[6]并且被视为不安全。甲骨文已从其下载页面中删除了这些版本,但仍可从Java Archive找到。甲骨文不建议使用来自Java Archive的构建版本。[7]安装[]
在安装完Java后,在启动器的Java路径中输入新的路径即可。对于Windows一般是C:\Program Files\Java\[类型]-[版本]\bin\javaw.exe,对Linux一般是/usr/lib/[类型]/[版本]/bin/java,对MacOS一般是/System/Library/Frameworks/[类型].framework/Versions/Current/Commands/java。
你必须在JVM参数中移除-XX:+CMSIncrementalMode
。这个参数会导致Java 9或更高版本直接启动失败。
备注[]
由于Minecraft启动器已和Java绑定,除非你使用的是第三方启动器,否则你不需要单独下载Java。如果你的机器是64位的,建议安装64位的Java以获得最佳性能。有些系统需要管理员权限来安装Java。已知问题[]
如果你在Windows 10上使用英特尔HD2xxx/3xxx显卡,请不要升级,因为该驱动程序存在漏洞。Java 8使用了一种较慢的渲染方法,使得它可以工作。如果你在Java版1.12.2及以前的版本使用Forge API,请不要更新到Java 9及以上版本,因为Forge API需要的部分Java API在Java 9被移除,使得它无法工作。参考[]
- ↑http://www.java.com/zh_CN/download/faq/whatis_java.xml↑MCL-18306↑https://help.mojang.com/customer/portal/articles/2636196↑“Minecraft Snapshot 21w19a” – Minecraft.net,2021年5月12日↑“Minecraft 1.18 Pre-Release 2”–Minecraft.net,2021年11月16日↑http://www.oracle.com/technetwork/java/javase/eol-135779.html↑http://www.oracle.com/technetwork/java/archive-139210.html
查论编 教程(作下划线标记的教程为中文独有教程) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|