Oracle releases Java SE 9 and Java EE 8
Oracle Corp. has just announced the general availability of Java SE 9 (JDK 9), Java Platform Enterprise Edition 8 (Java EE 8) and the Java EE 8 Software Development Kit (SDK). In other words, these releases have set the stage for faster releases and more open source engagement from now on.
JDK 9 is a production-ready implementation of the Java SE 9 Platform Specification, which was recently approved along with Java EE 8 in the Java Community Process (JCP). On the other hand, with updates to eight major specifications, Java EE 8 looks to streamline and simplify the Java EE platform for the cloud and micro services.
Java SE 9
The star feature of Java SE 9 is the Java Platform Module System, also known as Project Jigsaw, whose goal is to help developers reliably assemble and maintain sophisticated applications. The module system also makes the JDK more flexible, as it allows the developers to bundle only those parts of the JDK that is required to run an application when deploying to the cloud.
“Java SE 9 is the result of industry-wide development involving open review, weekly builds and extensive collaboration between Oracle engineers and members of the worldwide Java developer community via the OpenJDK Community and the JCP,” said Georges Saab, vice president of development for the Java Platform Group at Oracle. “This version of Java SE will provide millions of developers the updated tools they need to continue building next-generation applications with ease, performance and agility.”
Java SE 9 has 91 new features to offer, which includes modularisation and quite a few improvements that look to bring enhanced security, better performance management, and more scalability. However, Oracle reckons its best features are:
jshell delivers an interactive Read-Eval-Print-Loop tool to evaluate declarations, statements, and expressions of the Java programming language along with an API, which allows other applications to leverage this functionality. It also makes easier for developers to explore APIs and try out language features.
Improved Javadoc, which makes it easier for developers to learn new APIs by adding a search box to API documentation generated by the standard doclet, which can be used to search for program elements and tagged words and phrases within the documentation. It can also be used to search information on which module defines each class or interface.
Streams API enhancements, by adding methods to conditionally take/drop items from a Stream, iterate over a Stream’s elements, and create a Stream from a nullable value while expanding the set of Java SE APIs that can serve as sources for Streams, thereby improving developer productivity.
Please visit this page for the complete list of features introduced in JDK 9.
Oracle has also announced several changes to how Java SE and Java EE will be developed and released going forward.
For Oracle Java SE, Oracle is planning to move to a 6-month release cadence using a time driven release model instead of a feature driven release model. Mark Reinhold, the Chief Architect of the Java Platform Group at Oracle, proposed that the Java SE Platform and the JDK go from “the historical feature-driven release model to a strict, time-based model with a new feature release every six months, update releases every quarter, and a long-term support release every three years.”
With this change, Oracle will be providing OpenJDK builds under the General Public License (GPL). Further, Oracle will also be contributing previously commercial features to OpenJDK such as Java Flight Recorder in Oracle JDK in order to make Oracle JDK and OpenJDK more aligned.
Java EE 8
From now on, Java EE technologies will work under the supervision of the Eclipse Foundation. To make this possible, Oracle, Eclipse and other community members are currently working out the details behind the technology transfer and ongoing governance and process.
Mike Lehmann, vice president of product management at Oracle said that “Today’s major release of the Java Platform Enterprise Edition is one we think developers are going to be excited to use by open sourcing Java EE technologies to the Eclipse Foundation, we have set it up for ongoing success in the future. Oracle is committed to working with the Java EE community and the Eclipse Foundation to continue enterprise Java innovation, support and evolution.”
Important features in Java EE 8 include:
- HTTP/2 support in Servlet 4.0
- New JSON binding API and various enhancements in JSON-P 1.1
- Expansion of JAX-RS to support Server-Sent Events and a new reactive client API
- New security API for cloud and PaaS based applications
- Multiple CDI enhancements including support for asynchronous events
For the complete list of features included in Java EE 8, please visit this page.