The goal of Project Amber is to explore and incubate smaller, productivity-oriented Java language features that have been accepted as candidate JEPs in the OpenJDK JEP Process. This Project is sponsored by the Compiler Group.
The goal of this Project is to provide tools of use to developers who work on the OpenJDK code base. Such tools currently include test tools and Mercurial extensions; it is envisaged that additional tools will be added over time, after discussion on the Project's main mailing list and subject to the Project Lead's approval.
The Graal OpenJDK project grew out of the Maxine VM project. In the context of the Maxine VM, Graal demonstrated that a compiler written in Java (with all its software engineering advantages) could generate highly optimized code without compromising on compile times.
Due to encumbrances in the 2D source code (see the 2D Graphics page for more), some of the implementation of the Java 2D API requires open source replacements.
The primary goal of this Project was to produce an open-source implementation of the seventh edition of the Java SE Platform, as defined by JSR 336 in the Java Community Process.
The goal of this Project was to produce an open-source reference implementation of the Java SE 8 Platform Specification defined by JSR 337 in the Java Community Process.
The goal of this Project was to produce an open-source reference implementation of the Java SE 9 Platform as defined by JSR 379 in the Java Community Process.
The goal of this Project is to investigate the creation of a Read Evaluate Print Loop (REPL) tool for the Java programming language as described in the corresponding JEP.
JSR 335 (Lambda Expressions for the Java Programming Language) supports programming in a multicore environment by adding closures and related features to the Java language. The JSR has reached its Final Release; these changes to the platform are part of the umbrella JSR 337 and have been integrated into Java SE 8 (modifying the language, JVM, and library specifications).
The goal of this Project is to enhance the java.util.Locale class in order to bring the Java platform into conformance with IETF BCP47 and UTR35(CLDR/LDML). A detailed proposal may be found here.
We are extending the JVM with first-class architectural support for languages other than Java, especially dynamic languages. This project will prototype a number of extensions to the JVM, so that it can run non-Java languages efficiently, with a performance level comparable to that of Java itself.
Nashorn's goal is to implement a lightweight high-performance JavaScript runtime in Java with a native JVM. This Project intends to enable Java developers embedding of JavaScript in Java applications via JSR-223 and to develop free standing JavaScript applications using the jrunscript command-line tool.
We are improving and enriching the connections between the Java virtual machine and well-defined but “foreign” (non-Java) APIs, including many interfaces commonly used by C programmers.
The goal of this Project is to provide a full featured port of OpenJDK on the Linux/AArch32 platoform. AArch32 is the 32-bit sub-architecture within the ARMv8 architecture. The port will be fully compatible with ARMv7 and may support ARMv6 depending on community interest.
The goal of this Project is to provide a full-featured and certified version of OpenJDK on the Linux/AArch64 platform which can be integrated into JDK 8. AArch64 is the 64-bit mode of ARMv8; it is a completely new architecture, and is not compatible with the 32-bit ARM instruction set. It is hoped that this project will eventually be able to support operating systems other than GNU/Linux, and welcomes contributors with the necessary expertise.
The goal of this project is to provide a full-featured and certifiable version of OpenJDK on the Linux/PowerPC and AIX/PowerPC platforms which can be ultimately integrated into the main OpenJDK development branches.
The goal of this Project is to deliver a full-featured port of OpenJDK on the Linux/RISC-V platform which may be integrated into the main OpenJDK development branch.
Shenandoah is an ultra-low pause time garbage collector that reduces GC pause times by performing more garbage collection work concurrently with the running Java program. CMS and G1 both perform concurrent marking of live objects. Shenandoah adds concurrent compaction.
The goal of this Project is to investigate alternative SCM and code review options for the JDK source code, including options based upon Git rather than Mercurial, and including options hosted by third parties.
The goal of this Project is to investigate an alternate architecture for the javac type-checking subsystem which is free from speculative attribution. Additional details may be found in JEP 215: Tiered Attribution for javac.
Project Valhalla is augmenting the Java object model with value objects and user-defined primitives, combining the abstractions of object-oriented programming with the performance characteristics of simple primitives. These features will be complemented with changes to Java’s generics to preserve performance gains through generic APIs.
The goal of this Project was to implement the new JDK version string as described in JEP-223. The new version-string scheme was designed to easily distinguish major, minor, and security-update releases.