Nearly a year after the long awaited release of Java 8, Oracle have dropped Java 8u40. In the newest version of Java, there have been a number of bug fixes – but with no new language features or APIs, the most exciting thing about this release is likely the upgrades to JavaFX related features.

According to Java overlords Oracle, from 8u40 onwards, JavaFX controls have been enhanced to support “assistive technologies”. There’s also a public API for devs to write their own accessible controls. Accessibility support extends to Windows and Mac OS X platforms and incorporates support for reading the keyboard “traversable” JavaFX controls by a screen reader. You can also find support for a “special high-contrast mode that makes controls more visible to users.”

Oracle state that, going forward,“developers using the JavaFX media stack can now gain Mac App Store acceptance and have the opportunity to have their applications released on the Mac App Store.”

Additionally, JDK 8u40 packs in “JavaFX UI controls; a spinner control, formatted-text support, and a standard set of alert dialogs.” Whilst that may not be such a big deal if you’re one of the JavaFX doubters, with the technology rapidly gaining traction in the enterprise, this opens the door for a host of new capabilities.

For a peek at the “very clear performance enhancements” that come for JavaFX in 8u40, take a look at this video by NetBeans enthusiast Geertjan Wielenga;

Needless to say, the JavaFX community have been quick to voice their excitement;

Elsewhere, there have been a number of other headline changes. In the commercial vein, Application Class Data Sharing (AppCDS), which extends CDS to allow developers to put classes from standard extensions directories and the application class path into the shared archive, is no longer considered an experimental feature.

The concept of “memory pressure” is also a new comer in 8u40, with cooperative memory management. Representing total memory usage (RAM) on a system, memory pressure is a measure of how close you are to running out of memory on your system. The JDK will react when pressure is high, and try to reduce memory usage – largely by focusing on Java heap size (at the sake of performance – although this is intentional).

Garbage collection will occur less frequently moving forward, thanks to updates to Java’s Garbage First (G1), which should mean less protracted pauses as the system tries to free up memory.

Other enhancements include the ability to enable the Java Flight Recorder at runtime, and a wide ranging host of bug fixes. Notably, this includes quite a few changes to Nashorn, with a general codebase clean up and performance improvements, including the addition of  support for dynamic languages  in its runtime, as well as a class filter for granular access to Java classes from JavaScript code.

If you’d like to get stuck straight in, download here – and click here for a full list of everything new in Java-world. Regardless of how significant these changes may be for you, updating could be more of a priority for those still running Java 7, given that Oracle has announced that from next month, it will no longer be providing public support.

“Massive” Minor Release Java 8u40 Packs a Punch

About The Author
- Editor of, focusing on all things Java, JVM, cloud-y, methodical, future-fantastic, and everything in between. Got a piece of news, article or tutorial you'd like to share with your fellow Voxxians? Drop us a line at

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>