Oracle and IBM announced on Oct. 11 that the companies will collaborate on the OpenJDK reference implementation. OpenJDK is an open-source implementation (most of it under the GPLv2) of Java Standard Edition (SE) 6.
In a press conference, IBM and Oracle officials said that the collaboration will center on the OpenJDK project and its related Java Development Kit (JDK) and the Java Runtime Environment (JRE). At the same time though, the Java Community Process (JCP) will continue to be the primary standards body for Java specification work and both companies will work to continue to enhance the JCP.
OpenJDK was founded by Sun in 2006. In many ways, OpenJDK was Sun keeping its promise to open-source Java. In the meantime, other projects, such as Apache’s Harmony sought to create its own open-source version of Java SE 6. IBM, and many other companies and open-source groups had also supported Harmony.
That’s not to say that OpenJDK didn’t also have its supporters. Red Hat and Canonical were early OpenJDK supporters. So why is IBM now supporting OpenJDK?
"IBM, Oracle and other members of the Java community working collaboratively in OpenJDK will accelerate the innovation in the Java platform," said Rod Smith, IBM’s VP of emerging technologies. "Oracle and IBM’s collaboration also signals to enterprise customers that they can continue to rely on the Java community to deliver more open, flexible and innovative new technologies to help grow their business."
What that means for Harmony, according to Smith, is that while "IBM will continue to support Harmony, but our main interest will be in OpenJDK."
In a blog posting, IBM’s VP of Linux and open source, Bob Suitor, further explained, "We think this is the pragmatic choice. It became clear to us that first Sun and then Oracle were never planning to make the important test and certification tests for Java, the Java SE TCK [Technology Compatibility Kit], available to Apache. We disagreed with this choice, but it was not ours to make. So rather than continue to drive Harmony as an unofficial and uncertified Java effort, we decided to shift direction and put our efforts into OpenJDK. Our involvement will not be casual as we plan to hold leadership positions and, with the other members of the community, fully expect to have a strong say in how the project is managed and in which technical direction it goes."
IBM hadn’t done this earlier because, Smith said, "In the past, while Sun expressed interest in having IBM join, IBM didn’t see a real dialogue. Under Oracle, doors have opened and we’re pleased to work together now on OpenJDK."
In addition, Smith said, "We want to focus our efforts and double down our work to increase innovation in Java. It may sound boring, but also by working on OpenJDK, we’ll be able to commit bug fixes directly and advance improvements in Java more quickly."
At least one major Java player is looking forward to IBM and Oracle joining forces in OpenJDK. Mike Milinkovich, executive director of the Eclipse Foundation, said, "Today’s announcement is clearly good news for Java, and by extension the Eclipse community. It will strengthen the platform, increase the pace of innovation and solidify the value of the Java ecosystem."
As for Harmony, it appears the Apache Software Foundation may be willing to close its doors. In a blog posting by Tim Ellison, one of Harmony’s senior members, Ellison wrote, "So what’s best for the Java ecosystem? I believe that compatibility is vital, and rather than risk divergence the right thing is to bring the key platform development groups together on a common codebase. Lessons learned on Project Harmony will be of value to OpenJDK, and I know there is immense mutual respect between the IBM and Oracle engineers."