A group of developers last week proposed an Apache Foundation project that would create an open-source version of Sun Microsystems' desktop Java software--a project Sun has already endorsed and in which it may even participate, according to a senior member of Sun's Java development team.
Project Harmony debuted last Friday, appearing as a formal proposal on an Apache email discussion list. The proposal lists 12 founding members, including both U.S.-based and overseas developers active within the Apache and Java communities, and several of whom are already active in existing open-source Java projects.
The Harmony group's proposal, posted to the email list and elsewhere by Apache member Geir Magnusson, cites a "clear need for an open-source version of Java 2, Standard Edition (J2SE)."
"There are . . . efforts that provide alternative approaches to execution of Java bytecode," the introduction states. "All of these efforts provide a diversity of solutions, which is healthy, but barriers exist which prevent these efforts from reaching a greater potential."
This Time, It's Soup To Nuts
According to the Harmony proposal, the group intends to create a complete set of class libraries, a Java Virtual Machine (VM) implementation, and a test suite for interoperability testing, all under the terms of Apache's open-source licensing model. Although a variety of open-source projects have attempted to duplicate various parts of the J2SE specification with varying success, the current Harmony proposal is the first attempt to create a complete open-source version of J2SE to receive widespread credibility and support as a project with legitimate prospects for success.
The Harmony proposal and accompanying FAQ acknowledge several key challenges, including concern over possible intellectual property conflicts during the course of the project.
Among other precautions, the project will require members to disclose prior experience with proprietary code and to avoid aspects of the project where prior knowledge might "contaminate" an open-source recreation. The proposal will also pass all non-original contributions through Apache's standard provenance and licensing process, which itself is expected to cause fewer complications than a project based on the GPL licensing model.
The entire project will also have to wait for Sun's release of its next major J2SE update. The J2SE 6.0 implementation, dubbed Mustang, will be the first to include Sun's proposed licensing changes that remove possible legal barriers to reverse engineering.
Harmony members state in the project FAQ that they also expect to benefit from Apache's status as a non-profit member of the Java Community Process (JCP): A Sun-organized group that, among other things, manages the testing suite used to certify compatibility with the official Java specification. Although access to the TCK suite is typically carefully controlled and extremely expensive, Apache is entitled to use the TCK on much more reasonable terms, due to its JCP affiliation and tax-exempt status.
Under the current Apache Foundation rules, if the proposal is approved, Harmony will reside initially in the organization's Incubator project, created to manage Apache's rapidly growing stable of new open-source projects. At some point in the future, a project management committee will either promote Harmony to a full project, reclassify it as a sub-project, or retire it.