As part of the Unified Community Platform project, your wiki will be migrated to the new platform in the next few weeks. Read more here.
Updating Java is important to do as a Minecraft player, as some technical bugs may be fixed only by updating Java.
The Minecraft launcher is bundled with Java version 1.8.0_51, which is used by default. It is possible to change the used Java version in the profile options menu.
What is Java?
Java is a programming language and computing platform. Unlike many other languages, Java does not run directly on the hardware, but in a virtual machine, called the JVM (Java Virtual Machine). Minecraft is written in Java, and uses it for game logic, rendering, and networking.
As of April 14th, 2020, the latest stable (Long-Term Support) Java versions are 1.8.0_251 and 11.0.7, while the latest development build is versions 15 early-access build 18.
The latest versions of Java contain important enhancements to help improve performance, stability and security of the Java applications that run on your machine. Installing the latest Java update ensures that Minecraft continues to run safely and efficiently.
- As of the Java Edition 1.12 update, Minecraft requires Java 8 or greater.
- Minecraft may sometimes crash without being run by a relatively modern version of Java.
- Java updates fix lots of problems and bugs and typically cause increases in performance.
- Running a server requires your computer to have Java installed instead of the pre-installed Java. See Tutorials/Setting up a server for more information.
Where to download
You can get Java either from Oracle or from someone who builds OpenJDK. For the purpose of minecraft they are essentially the same, but Oracle's "OTN" version requires a PAID license for commercial and production purposes. If you make money from streaming minecraft or run a minecraft (even non-profit) server, you MUST use OpenJDK unless you want to figure out how to pay.
- AdoptOpenJDK (stable and development builds)
- Zulu OpenJDK (stable and development builds)
- Oracle OpenJDK (stable and development builds) – zip packages only (no installer)
- Oracle JRE (stable "OTN" builds)
You will see that Java is divided into LTS (long-term support) like 11 and STS (short-term support) version numbers like 12. A LTS version will be given updates for longer, so people tend to use them as a stable standard of "modern, but not too new" Java.
- The licensing change in January 2019 (8u211) is partially why Minecraft's official launcher is stuck at 8u51, instead of a newer Java 8 update.
- Java 9, 10 and 12 are no longer supported by Oracle, they no longer receive public security updates, and are to be regarded as insecure. Oracle has removed them from its download page but the builds are still available in the Java Archive. Oracle does not recommend using builds from the Java Archive.
How to update?
When you install Java, go to your launcher, edit or create an installation, and in the Java Executable box, type
C:\Program Files\Java\jvm-[version]\bin\javaw.exe (Windows)
/usr/lib/jvm/(java version)/bin/java (Linux). The exact value depends on where your java is installed.
You must remove
-XX:+CMSIncrementalMode from your JVM Arguments. This option is meaningless for Java 9 and newer, and will cause a launch failure if you keep it there.
- In Java 11 or newer, a very rare crash may occur in world generation code ( ). A mod called Voyager exists to fix this issue.
- Do not upgrade if you are using Intel HD2xxx/3xxx graphics on Windows 10, as the driver is bugged. Java 8 uses a slower rendering method that makes it work, and that is why Mojang stuck to this old version.
- jellysquid3's Java Update / ZGC Guide