Initial Code for OpenJDK for Mac OS X Published
Apple's decision in November to join Oracle and IBM in supporting the OpenJDK project to provide a Java SE 7 implementation on Mac OS X bore fruit this week:. The first bit of code was published by the Mac OS X Port Project on the OpenJDK site.
OpenJDK is the free, open source implementation of the Java Standard Edition (Java SE) specification, licensed under the GNU General Public License (GPL) with a linking exception. (The GPL linking exception exempts components of the Java class library from the GPL licensing terms.)
This initial code was actually published by The Porters Group, a community created to port OpenJDK to various operating systems and processor architectures. The group is currently sponsoring several projects, including, among others, a port of OpenJDK for the BSD family of operating systems; support for the IcedTea variant of OpenJDK currently distributed with GNU/Linux distros such as Fedora, Gentoo and Debian; and a project called Caciocavallo, which seeks to improve the internal interfaces of the OpenJDK AWT and 2D subsystems to make it easier to port AWT to new platforms.
The goal of the project, the group says on its Web site, is to produce a high-quality, open source version of JDK 7 for the Mac. It includes among the project's goals: passing all "appropriate certification tests for Java SE 7;" inclusion of a complete, native Cocoa-based UI Toolkit (Cocoa is Apple's Objective C-based programming environment for Mac OS X); and "excellent performance."
This first hunk of code is based on the BSD port and provides the same functions, the Porters Group said.
Apple announced plans in November to work with Oracle on the OpenJDK project to provide a Java SE 7 implementation on Mac OS X after declaring two weeks earlier that it would deprecate the Java runtime ported by Apple to Mac OS X. "Deprecating" the custom-ported Java packages for the Mac would have left them in place, but without support, and with a strong recommendation for developers to avoid them.
Forrester analyst John R. Rymer saw Apple's decision as a necessary course correction.
"The Java development community is huge," Rymer said. "Ignoring them would have been bad for business, long term. It also probably made economic sense to participate in the OpenJDK project that everybody is lining up to get behind, and to which Apple can now contribute. It frees them from having to build it all themselves. Building system software and maintaining it is really hard and expensive. Why not get on the OpenJDK bandwagon?"
Java SE 6 is still available for Mac OS X Snow Leopard and the upcoming release of Mac OS X Lion. Java SE 7 and future versions of Java for Mac OS X will be available from the OpenJDK project.
Apple is the second big tech industry player to support Oracle's plan to make OpenJDK what Hasan Rizvi, senior vice president for Oracle Fusion Middleware and Java, called "the premiere location for open source Java development." On October 11, IBM announced plans to work with Oracle on OpenJDK "to improve the rate and pace of innovation" in the Java community.
More information about the Mac OS X Port Project is available on the project's wiki page.