Java 7u4 Brings Support for OSX

| by Alex Blewitt Follow 4 Followers on May 02, 2012. Estimated reading time: 2 minutes |

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 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 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.

Rate this Article

Adoption Stage

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

Login to InfoQ to interact with what matters most to you.

Recover your password...


Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.


More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.


Stay up-to-date

Set up your notifications and don't miss out on content that matters to you