Owner

Current status

Detailed Description

The current Java implementation in Fedora comes from OpenJDK.

Java 8 (and OpenJDK8) are tentatively scheduled for release in September 2013. Fedora 19 will most likely be out just a few months before that, and is therefore positioned to receive a tech preview version of the latest OpenJDK8 candidates.

Benefit to Fedora

Fedora users will have access to all the new language and feature enhancements provided by Java 8. Additionally, developers can start developing applications early on for Java 8.

Scope

Since Java 8 will be a tech preview, the primary JDK in Fedora 19 will continue to be OpenJDK7. OpenJDK8 is not expected to be the primary Java until Fedora 20 at least.

Two problems would generally be expected with a major JDK update based on past experience:

FTFBS failures due to packages having a hard-coded JDK version dependency.

This was dealt with when OpenJDK7 was introduced over Fedora 16 and Fedora 17. Now all Java dependent packages should require java >= 1.6.0, and therefore this issue will not be a problem any more.

There may be packages that rely on API that is deprecated in Java 8

Such packages cannot be identified until we actually start to build with Java 8. Since Java 7 will continue to remain the primary version of Java in Fedora 19, any API deprecation issues will be a secondary problem as the main JVM will continue to be able to run everything correctly. We expect to have everything resolved well before Java 8 is to become the primary Java version in Fedora (F20 or later).

How To Test

Install java-1.8.0-openjdk

Run (as root) 'alternatives --config java' and select the 1.8 version

Run 'java -version' to ensure that it is correct

User Experience

By default, users and developers will have access to all of the new features that version 8 of the language provides.

Dependencies

No new dependencies are expected for java-1.8.0-openjdk. This part will be updated if the situation changes.

Contingency Plan

Java 8 will be a tech preview. The primary version of Java will continue to be Java 7 as it is now, and therefore no contingency is needed.

Documentation

Release Notes

This release of Fedora includes a technological preview of Java 8, offered through the java-1.8.0-openjdk and java-1.8.0-openjdk-devel packages.

Java 7 continues to remain the default JDK for this release. The inclusion of Java 8/OpenJDK8 will allow developers to develop and test their applications for the next version of Java in parallel while everyone can continue using the stable Java 7 for daily use.