OREANDA-NEWS. Demonstrating its continued investment in the world’s #1 programming language, Oracle today announced the release of the Java Development Kit (JDK) 8, Update 40 (JDK 8u40). From small devices to smart cities, Java powers solutions like no other technology. As such, Oracle is committed to working closely with key partners in the Java ecosystem to continually modernize and deliver new innovations to the Java Platform. This latest release of Oracle’s implementation of Java SE, JDK 8u40, brings improvements to performance, scalability and administration, making it easier for Java developers, partners and IT decision makers to innovate faster in a simple, easy manner and improve application services. The release also includes new updates to JavaFX. Full release notes can be found here.

“The proliferation of mobile devices and the Internet of Things has led to an increasingly connected world, but none of this would be possible without underlying foundational technology like Java,” said Georges Saab, vice president of development, Java Platform at Oracle. “With these updates to JDK 8, we continue to usher in the next era of Java to enable developers and enterprises alike to cement Java’s role as the backbone of today’s and tomorrow’s revolutionary business solutions.”

Since its launch last year, Java SE 8 has achieved record adoption rates. Overall, adoption is up significantly compared to the same post-launch time period for Java SE 7. Continuing to deliver significant enhancements to the platform, the latest release introduces the following features and benefits:

G1 enhancements (JEP156): Limits the likelihood of long pauses while the system frees resources. G1 reliance on full Garbage Collections to perform class unloading or any other critical operations has been reduced. This is achieved by enabling class unloading to occur at the end of concurrent marking cycles.
Dynamic Enablement of Java Flight Recorder (JFR): Simplifying usability for Oracle Java SE Advanced users, JFR can now be dynamically enabled from the command line or Java Mission Control (JMC), regardless of the original start-up parameters. Previously this could only be done with a stop and restart with the proper instructions from the command line. Dynamic enablement of JFR enables users to resolve production problems without requiring a stop, which may impact SLAs and cause disruptions to the end-user experience.

Improvements to the native packager: Enables developers to create native-feel applications that do not require clients to have an existing Java Runtime installed. These self-contained applications can then be deployed into areas like the Mac app store. The application developer has full control over the runtime and application entry points.

New Time Zone Date Updater Tool: This tool can consume the ‘raw’ time zone data (tzdata) rules from the IANA time zone registry database and convert those to the necessary format required by the JRE. This provides users with the ability to immediately update the JDK/JRE time zone rules with the latest updates from IANA.

Nashorn Support: Numerous Nashorn optimizations including support for dynamic languages are incorporated into this release. Also added is a Nashorn Class Filter, which provides fine-grained control over access to Java classes from JavaScript code via a new filtering interface.

JVM Reaction to Memory Pressure: “Memory pressure” is a property that represents the total memory usage (RAM) on the system. This new feature can be leveraged to reduce the amount of memory used on a system where multiple JVMs are deployed and control the amount of memory designated to be consumed by each JVM, avoiding Out of Memory Errors (OOMEs) from occurring.

Java Mission Control 5.5 (JMC): This tool is now bundled with JDK 8u40. Based on Eclipse 4.4, JMC 5.5 also includes plug-ins that are now signed and will by default hide Lambda Form hidden methods.

Lambda Form Reduction and Caching (JEP 210): This enhancement reduces the required memory footprint for applications and improves performance of dynamic languages.
Native Memory Tracking Scalability (JEP 195): This feature has been improved to allow it to run without causing a significant performance impact. At the same time, this feature provides users the ability to diagnose Java Virtual Machine (JVM) memory leaks.

Enhanced cryptographic performance of SHA algorithms: Performance has been improved on SPARC class systems which are used heavily by signing certificates in the Web of Trust. SHA performance is critical to Internet security as browsers have begun requiring more computationally expensive versions of SHA-256 or higher, and deprecating SHA-1.