Download Guide
There are several ways to download the JDK and optional components, and the best will depend on your particular situation and use case. Downloads covered here include:
- The Oracle JDK
- Enterprise Performance Pack (EPP) for Java SE 8
- GraalVM
- Java Flight Recorder (JFR) and JDK Mission Control (JMC)
- MSI Enterprise JRE Installer for Java SE 8
Downloading the Oracle JDK
Overview
There are multiple ways to download the JDK, each ideal for a different user and use-case combination. The table below will guide you to the best download location for your needs.
The table assumes that you know what types of releases you want, but if you would like some guidance, see Choosing the Right JDK Version: An Unofficial Guide. Oracle customers can also open a Non-Technical Service Request for assistance.
For reasons related to security, Oracle recommends you only download the Oracle JDK directly from Oracle or trusted sources.
Jump to:
- Container images of the Oracle JDK on Oracle Linux, for users who want a ready-made image or instructions for creating their own.
- The JDK for Oracle Linux, for users running Oracle Linux.
- The JDK for other operating systems (including other Linux distributions), for other use cases, such as downloading to a single desktop or automating downloads.
A Note on Licenses
Different Java releases are made available under different licenses. It is the user's responsibility to ensure that their use of Java conforms to the applicable license.
Licenses mentioned in this page include:
- Oracle No-Fee Terms and Conditions License (NFTC). All JDK Feature releases, including Long-Term Support (LTS) releases, are initially made available under this license. LTS releases convert to the OTN license (see next item) after 3 years. Non-LTS releases remain are supported for 6 months and remain on the NFTC license. See the Oracle Java SE Support Roadmap for details.
- Oracle Technology Network License Agreement for Oracle Java SE (OTN). An easily created Oracle account is required to download any releases subject to the OTN license.
- Oracle Binary Code License Agreement for the Java SE Platform Products and JavaFX (BCL)
- The Universal Permissive License (UPL), Version 1.0
- The GNU General Public License (GPL)
Oracle JDK Download Methods
I want... | ...and... | ...also... | ...so I will get it from... |
---|---|---|---|
A container image of the Oracle JDK on Oracle Linux | |||
I want a ready-made image |
Container Registry (OCR), which has Oracle Linux container images with the JDK included. Oracle Linux and the included JDK will be covered by different licenses. There are 4 Java repositories in OCR: jdk, serverjre, openjdk, and jdk-no-fee-term. The jdk repository has images with every JDK release, while the serverjre repository has images with the server version of JDK 8, which only supports the x86-64 architecture. Both repositories require a free Oracle account, and downloads are covered under the Standard Oracle Terms. See the repository pages for download instructions. The openjdk repository has images with OpenJDK releases, which are covered by the GPL. No login is required. See the repository page for download instructions. The jdk-no-fee-term repository has images with JDK releases covered by the NFTC license. No login is required. See the repository pages for download instructions. Learn More |
||
I want to build my own | Oracle's GitHub repository, which has Dockerfiles and sample images. These Dockerfiles are samples meant to be customized, and are covered by the UPL license. Note that Dockerfiles may need to be updated for each CPU release. | ||
The JDK for Oracle Linux | |||
I am an OCI customer |
The Oracle Cloud Infrastructure yum Server. Access to content on this server depends on your support contract. If you are an OCI customer, the full Oracle JDK is available. If you are using a base Oracle Linux image these repositories are included. This server replicates all of the Unbreakable Linux Network (ULN) repositories (see below), but does not require ULN registration. Learn More
|
||
I am an Oracle Linux user | I am an Oracle Linux Support customer |
Unbreakable Linux Network (ULN) channels. These repositories are the same as the OCI repositories but are available outside of OCI, and include software not available in the public Oracle Linux yum server. ULN channels are only available to Oracle Linux Support customers. Learn More
|
|
The JDK for a different OS | |||
I want to download it manually | |||
I am an Oracle customer |
My Oracle Support is the best method. See the following documents:
It is the user's responsibility to ensure that their use of Java conforms to the applicable license. If you are unsure, file a Non-Technical Service Request. |
||
I am not a customer |
The Java download page on Oracle.com, which has currently-supported releases covered by the NFTC and OTN licenses. At the top of the page are the releases covered by the NFTC license, and beneath that are the releases covered by the OTN license. It is the user's responsibility to ensure that their use of Java conforms to the applicable license. GraalVM is available from this page as well. Releases covered by the OTN license require a login with a free Oracle account. Publicly-available end-of-life releases can be downloaded from the Java Archive page on Oracle.com. These are covered by the NFTC, OTN or BCL license, depending on the particular release. Alternatively, anyone with an Oracle account can download any version of the JDK using Oracle Software Delivery Cloud. This system allows you to select multiple Oracle products, and then download a customized downloader. That downloader will download .zip files of the chosen packages. These are made available under Oracle Standard Terms and Restrictions. |
||
I want to automate downloading | |||
I am an OCI user |
Java Management Service (JMS) on OCI, which can generate customized terminal commands and Dockerfiles to download the latest recent versions of releases available under the NFTC and OTN licenses. Java Management Service tracks all of a user's downloads and can generate reports based on that data. These reporting features are mainly useful for fleet management and can be ignored if they are not useful to you. Another advantage of using JMS is that you if you automate a download of an LTS release covered by the NFTC, and the license changes to OTN, you simply have to login to OCI and accept the new terms. Your existing download tokens will automatically be extended to the new license, which means you do not have to update any scripts. Note that when creating an OCI account, even a free tier, Oracle will ask for a credit card number to verify your identity. Your credit card information will not be saved and you will never be automatically billed. Learn More |
||
I do not use OCI |
JDK and GraalVM Script Friendly URLs on Oracle.com has instructions for automating downloads from Oracle.com. Releases available under the NFTC license can be downloaded via command line or automatically in scripts and Dockerfiles. It is possible to use these scripts to download both the latest and archived releases. Note that a script configured to download the latest version of a release family will cease functioning when that release family reaches end-of-life and becomes an archive release. |
Enterprise Performance Pack (EPP)
In 2022 Oracle introduced Enterprise Performance Pack for JDK 8 users that were unable to upgrade to later JDK versions, but could benefit from many of the performance improvements introduced with JDK 17.
EPP is a Java runtime that brings the performance enhancements of the JDK 17 Java Virtual Machine to a Java SE 8 runtime. For most many situations, you can run Java SE 8 applications unchanged on the EPP, and will see significant performance improvements. The EPP is ideal if you want to use Java SE 8 and you're running workloads at scale.
Download
Learn More
GraalVM
GraalVM is a high performance JDK that speeds up the performance of Java and JVM-based applications, and simplifies the building and running of Java cloud native services. You can use the GraalVM JDK just like any other Java Development Kit in your IDE.
Download
- Supported Java SE and Java Component Downloads on MOS (Doc ID 1439822.2)
- GraalVM Downloads on Oracle.com
- Download GraalVM Using Script-Friendly URLs
Learn More
Java Flight Recorder (JFR) and JDK Mission Control (JMC)
Java Flight Recorder (JFR) is a profiling and event collection framework built into the JDK. It allows developers and system administrators to gather detailed, low-level information about the behavior of the Java Virtual Machine and the application running on it.
JDK Mission Control (JMC) can be used to analyze the data collected through JFR, or to connect to a running Java virtual machine, allowing you to understand in real-time, or after-the-fact, what lead to a hang, crash, excessive CPU or memory use, or many other problems.
Download
Learn More
- JDK Mission Control on Oracle.com
- JDK Mission Control Documentation
- Training - How to Analyze Java Flight Recordings for High CPU and High Lock Contention or Latency Scenarios (Doc ID 2177255.1)
- Diagnosing a Running Java Virtual Machine (JVM) Using jcmd Command
MSI Enterprise JRE Installer (Java SE 8 Only)
The Java MSI Installer allows you to quickly and consistently roll out Oracle JRE updates to Windows systems using common automation tools. The Java MSI Installer saves system administrators and DevOps time as they can re-use configurations and deploy a new Java update quickly.
Download
Learn More