Will the Dispute Between Apache and Sun Be Resolved?
The main issues surrounding the Apache/Sun dispute are varied, but here is a short summary of events that led up to it:
- The Apache Harmony Project was intended to create an ASF-licensed modular virtual machine (VM) and a JDK based on Java SE version 5.0.
- Sun open sourced the JDK with the OpenJDK project.
- To be a certified JDK, Harmony had to pass Sun's Technology Compatibility Kits (TCKs).
- Sun stated that Harmony was based on the old JDK 5.0 standard and not on the latest JDK (6.0, at the time), so the certification process stalled and the Harmony Project was left in limbo.
To this day, the OpenJDK governance board has not resolved the dispute. How Oracle handles this situation is the second barometer of how they will manage the Java process.
Could Oracle Seize Java IP by Withholding TCKs for the JDK?
The many legal issues involved in JDK certification could be a large can of worms for Java. For example, unless you pass the TCK for the OpenJDK, you do not get rights to the Java Intellectual Property (IP)i.e., you don’t have a certified JDK.
|There is really no way to have an official OpenJDK 7.|
Since we don’t have a specification for Java SE 7 and Sun does not appear to be pushing for one, there is really no way to have an official OpenJDK 7. Oracle could take the same approach and not release a specification or the TCKs, and thus keep the IP internal.
Reading the Tea Leaves
As you can see, the three questions above are intertwined to such a degree that each answer could itself have different levels and layers, such as:
- The JCP will most likely continue to exist, but it may assume a different role in dictating the direction of the technology.
- That difference in governance could provide a simple fix for the ASF issues, leaving them as a fading memory.
- Oracle may release a new JDK specification and the TCKs along with it, fully realizing the promise of an open JDK.
How these factors play out will give the Java developer community a clear understanding of how Oracle intends to run Java.