The goal of Project Amber is to explore and incubate smaller, productivity-oriented Java language features that have been accepted as candidate JEPs under the OpenJDK JEP process. This Project is sponsored by the Compiler Group.
The goal of this Project is to provide a venue to explore improvements to the overall handling of annotations within the javac compilation pipeline. The Project will be entirely focused on improving the implementation of the existing language and API specification and is not intended as a venue to change or enhance these specifications.
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.
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).
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.
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.
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.
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.