OpenJDK 8 updates are a separate project of OpenJDK. Andrew Haley serves as the Project Lead. The list of Reviewers, Committers, and Authors can be found in the jdk8u entry of the OpenJDK Census.
Latest GA release: 8u462
Latest Generally Available (GA) binary releases of the OpenJDK jdk8u project are available at: https://adoptium.net/temurin/releases/?version=8
Latest Early Access (EA) binary releases of the OpenJDK jdk8u project are available at: https://adoptium.net/temurin/nightly/?version=8
Most recent and past release details:
8u232-b09 (GA), October 15th 2019 [Release] [Tag] [Binaries] [Missing changes vs 8u232 of Oracle] (JBS Login required) [Additional changes vs 8u232 of Oracle] (JBS Login required)
8u222-b09 (GA), July 16th 2019 [Release] [Tag] [Binaries] [Missing changes vs 8u222 of Oracle] (JBS Login required) [Additional changes vs 8u222 of Oracle] (JBS Login required)
jdk8u-dev (git): Pushes for OpenJDK 8u482 after jdk8u-fix-yes approval. Check here for clearance.
jdk8u (git): Frozen for release of OpenJDK 8u472.
Dates may be subject to change
OpenJDK 8u472
Older releases can be found in the archive.
The transition of the 8u repositories from Mercurial to git was completed after the April 2022 release, on Monday, April 25th.
As a preamble, the project lead has established general guidelines for working on jdk8u and best practices for OpenJDK 8u backports.
OpenJDK 8 updates will be delivered on the same established quarterly cycle used by Oracle i.e. "the Tuesday closest to the 17th day of January, April, July and October."
Announcements and discussion take place on the jdk8u-dev mailing list. Development takes place in the jdk8u-dev git repository and should be the primary place for OpenJDK 8u committers to submit their work.
Code from the development repository is regularly tagged and promoted to the main jdk8u repository, which is used to stabilize and deliver the quarterly releases. Distributors should use this as their primary source for creating OpenJDK builds.
For further process details, you may want to continue reading here.
New fixes should first be submitted to the development repository for the current version of OpenJDK, jdk/jdk, first. The vast majority of changes submitted to the OpenJDK 8 project will be backports from later OpenJDK versions. The version of OpenJDK closest to 8u should be used to minimise the differences between the two JDKs e.g. if 11u is still maintained and has the patch, it should be backported from that repository, rather than jdk/jdk. Occasional exceptions are made when an issue only applies to 8. In particular, the build system can be quite different from that in later versions, especially as regards HotSpot.
Everybody is encouraged to submit fixes for OpenJDK 8 updates by using the SKARA processes now common to all OpenJDK projects. Established community members will help new developers without commit access in getting their patch reviewed. Should you not be willing or not be able to drive a fix into OpenJDK 8 updates, you can still suggest changes. But by only doing that, you are at the grace of the community to pick up your suggestion.
The suggested process is as follows:
git cherry-pick
as documented in the Skara backporting process. If it applies, go to #8. Otherwise, #7.Backport <x>
" where <x>
is the hash of the original commit. This ensures that the PR is correctly recognised by Skara as a backport and bugs updated appropriately./integrate
command. If you are not yet an OpenJDK 8u Committer, you may need to wait for someone who is to issue the /sponsor
command.Backport bugs will be automatically created on push. If a backport bug needs to be explicitly created - for example, for a Compatibility and Specification Review (CSR) - then please apply labels to that bug to avoid the need to work on two different bugs for the one issue. The fix version should be set to 'openjdk8ux' where x is the current version of 8u being developed. Please avoid using 'openjdk8u' as such bugs will not be resolved automatically. Maintainers should double-check this fix version is correct when approving.
In general, we follow the common rules for the jdk-updates project.
If the backport does not apply to the 8u tree via the automated shuffling described above, it should first be submitted for review.
Push approval for a fix is then requested by setting the jdk8u-fix-request label on the original JBS bug. The maintainer will either approve this by setting jdk8u-fix-yes or reject it by setting jdk8u-fix-no. Outstanding approvals can be monitored here. If, and only if, the fix is approved, it may be pushed to the appropriate jdk8u-dev repositories. Approved fixes show up in this JBS filter (login required).
During the later stages of a release cycle, the release enters rampdown. The master jdk8u repositories contain the latest version of that release, while the jdk8u-dev repositories are used to start work on the next release. If a change needs to be pushed to a release in rampdown, push approval can still be requested using the jdk8u-critical-request label. As the name of this tag suggests, this process is intended for fixes such as major regressions that must make the release. More minor bugs and new features should go in the next release being developed in jdk8u-dev. The maintainers may approve with jdk8u-critical-yes, defer to jdk8u-dev or reject altogether. Outstanding approvals for critical fixes can be monitored here. If, and only if, the fix gets approved with jdk8u-critical-yes, it may be pushed to the jdk8u repository. Approved critical fixes show up in this JBS filter (login required).
At the end of the month prior to the release month, the jdk8u repository is declared frozen, so embargoed security fixes can be added in private during the final few weeks. On release day, the final version will be pushed to the jdk8u repository and source bundles made available.
JBS Filters
Some filters will only work for users that are logged into JBS.
[All Requests] [Approved requests] [Approved requests without push] [Unapproved requests]
[Critical requests] [Approved critical requests] [Approved critical requests without push] [Unapproved critical requests]
[Open Downports Oracle -> OpenJDK]
[Open Downports Oracle -> OpenJDK] [Additional commits in OpenJDK vs Oracle]
[Open Downports Oracle -> OpenJDK] [Additional commits in OpenJDK vs Oracle]
[Open Downports Oracle -> OpenJDK] [Additional commits in OpenJDK vs Oracle]
The jdk8u-dev tree for ongoing development can be cloned using this command: hg clone http://hg.openjdk.java.net/jdk8u/monojdk8u-dev
The corresponding master tree jdk8u can be cloned using this command: hg clone http://hg.openjdk.java.net/jdk8u/monojdk8u
If you just want a read-only copy of the sources, you may also use git: git clone https://github.com/openjdk/jdk8u