BT
x Your opinion matters! Please fill in the InfoQ Survey about your reading habits!

Java 7u4 Brings Support for OSX

by Alex Blewitt on May 02, 2012 |

Last week's update of Java 7u4 brought about a number of minor changes to the runtime, including for the first time a release of JDK and JavaFX SDK for Mac OSX.

Prior to this release, Java releases for OSX have come through Apple who in recent years backed away from Java as a runtime platform. With the release of OpenJDK, instead of vendors providing their own variants and customisations on top of the platform, the goal is to have everyone converge on OpenJDK as the reference implementation. One advantage of this is that by moving the support upstream, security fixes will be made available for all platforms at the same time, instead of on a platform-by-platform basis. (Apple was particularly bad at releasing timely updates for its Java runtime; the recent spate of Flashback trojans and viruses were made possible through a Java security hole in Apple's original implementation which had been fixed for a while in OpenJDK.) It is worth noting that it is a 64-bit only build on Lion or later.

Although only a point release, there are a number of other minor changes, detailed in the release notes, that are worth noting.

Firstly, the next-generation garbage collection algorithm (known as G1) is fully supported in this version of the VM. Although this had been available in prior releases as a commercially supported variant and via an unlock (-XX:+UnlockExperimentalVMOptions -XX:+UseG1GC), this is the first time it is enabled on OpenJDK without the Experimental switch.

The G1 garbage collector – though not a real-time garbage collector – provides a much faster throughput of allocation/collection, which significantly limits the amount of full GC pauses that are often seen with prior garbage collectors. A presentation on G1 was available in JavaOne 2008, and is based on the ACM paper A generational mostly-concurrent garbage collector. To enable the G1 garbage collector in Java7u4, the same +XX:+UseG1GC is used as detailed on the VM command line options page, and more information is available via the garbage first collector description page.

Secondly, Java 7u4 is the first version of Java to be made available via java.com. Although this has shipped other versions of Java from the early Java 2 days, the 7u4 release is the first Java 7 release to be made available from the portal by default. (There is also an updated Java 6u32 available for those still on Java 6.)

Thirdly, some of the JRockit VM technology –which was acquired with the takeover of BEA in 2008 – is making its way into the OpenJDK systems. This includes the ability to generate buffered text dumps after crashes, an enhanced JMX agent and a diagnostics command framework called jcmd. This addition to the platform was covered in JEP 137 and makes its first appearance in Java7u4. There is likely to be a number of support and diagnostics tools that integrate on top of this framework in the future.

With the release of Java7u4 being available from Java.com for the first time, it is likely that end users of Java will be moving towards Java7 by default for installs. There has even been some discussion of automatically updating Java6 installs to Java7 in the future, though there are no plans at the moment to make this happen. With Java7 now being made available on all platforms from Oracle, and with the renewed effort around Java development, it seems that Oracle has breathed life back into the ecosystem.

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Mac OSX 10.7 is require for the install by Shi Kafune

Mac OSX 10.7 or up is require for the install.
version 10.6 does not work.

Re: Mac OSX 10.7 is require for the install by David B

Don't get too excited wrt JavaFX - nearly everything hangs when I try examples from Netbeans.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

2 Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2014 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT