Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Java 7 Now Includes JavaFX

Java 7 Now Includes JavaFX

Leia em Português

This item in japanese

Just before Christmas, Oracle released a second update to Java SE 7, and a 30th for Java SE 6. The Java 6 update improves the performance and stability of Java applications, and is now certified for Red Hat Enterprise 6. The Java 7 update includes a new version of HotSpot to improve reliability and performance, and adds support for Solaris 11 and version 5 and later of the Firefox browser.

In addition, as part of the Java 7 release, the Java Development Kit (JDK) now includes the SDK for developing JavaFX applications and, more importantly, the JavaFX Runtime is now installed with the JRE. As well as bug fixes, the bundled JavaFX release, version 2.0.2, includes some important updates, such as interoperability with the Standard Widget Toolkit (SWT), and a change of license, which enables third party developers to redistribute the JavaFX Runtime with their applications in accordance with the Oracle Binary Code License Agreement for the Java SE Platform Products and JavaFX (pdf document).

At JavaOne, Oracle announced its intention to open-source the entire JavaFX platform, and this process has now started with JavaFX 2 accepted as a project under OpenJDK. Under Sun's leadership, JavaFX was positioned as a framework for building Rich Internet Applications in Java; broadly a competitor to Flex and Silverlight. Both those frameworks now face an uncertain future, as Adobe and Microsoft, their respective vendors, now believe that the future of internet application development belongs to HTML 5. Marketing aside however, desktop-style applications still have a role, and Java does need a new client toolkit to replace the increasingly antiquated Swing, SWT, and AWT options. InfoQ noted, when the JavaFX 2 beta was first released, that it represented a completely new client layer for the Java SE platform, and the OpenJDK project page now makes this aim explicit:

The goal of OpenJFX is to build the next-generation Java client toolkit. The project intends to file a JSR in the Java SE 9 timeframe and hopes to eventually be part of the JDK proper.

The inclusion of JavaFX as part of Java 7 is a significant move. It isn't the first time something along these lines has been done - Sun bundled the Apache Derby database in the JDK as Java DB, for example. There are plenty of other things, including remarkably the classpath, that aren't part of the Java Language Specification, but are instead implementation details of Oracle's reference implementation. Similarly, since JavaFX is not yet part of the Java specification, and is unlikely to be so before Java 9 is released, it is only included in Oracle's release. But with Oracle providing releases for Windows, Linux, Solaris, and in the future Apple's OS X, that should cover the majority of desktops.

Rate this Article