Hopefully, by now, everyone knows that Apple joined the OpenJDK project last year. What does that mean?
- Apple will contribute the code that they used for their private Mac Java builds as GPL code to OpenJDK
- Oracle will take over the stewardship of the Mac port of Java
- Over time, the Mac platform will become a completely first-class citizen in the Java world
This is good news for Java developers who want to develop on Mac. It's also good news for Mac users - as it means that, for example, the native Aqua look-and-feel will continue to be supported - so Java desktop apps on Mac will look lovely. I, for one, can't wait to see what Nimbus look-and-feel will look like under native Aqua.
Over the last few days, there have been some developments - for example this wiki page, detailing the progress of the Mac port, has appeared. Buried at the bottom of the page is a link to a page where the open bugs for the Mac port are being publicly tracked (as they're ported across from Apple's internal system).
Development is focused around JDK 7 - the basic idea is to take a fork of the community-maintained BSD port, and add Apple's code to it, to produce a Mac-specific port. Relevant bug fixes should be able to go both ways between the two related ports, where possible.
All of this is likely to take time, however. The official line from Oracle is that JDK 7 will GA with Windows, Linux and Solaris as first-class supported operating systems, and the Mac will release as soon as possible after, with the hope that at some point in the future updates for the Mac version will be released at the same time as other OSes.
This applies to the Oracle-supplied binary builds. Of course, the OpenJDK code (which Oracle regard as the reference implementation) will be available (and GPL) for anyone who wants to build their own binary.
At java7developer.com, we think that we could be looking at roughly a 3 month gap between Java 7 GA and a Mac release - so maybe October 2011 if all goes well. For now, we're pretty happy running the community-provided OpenJDK builds. There are occasional problems with non-fatal X11-related exceptions clogging up standard out - due to some of the Mac's uniqueness, but on the whole, it's not bad at all for a pre-release product.
Have you tried any of the community builds? Let us know what you think in the comments either here or at the original post.
Martijn (@karianna, @java7developer)