Josh Fruhlinger
Contributing Writer

Oracle-ASF talks over TCKs stall

how-to
Jun 9, 20102 mins

So apparently Oracle and the Apache Software Foundation have been talking all along about a potential resolution of the long-running dispute over test compatibility kits (TCKs), a dispute that has kept Apache Harmony, a perfectly nice implementation of Java, from actually being certified as Java. This important, among other reasons, because Harmony is the basis for the Android OS’s Java environment. The negotiations have been going on behind the scenes, but we’re just hearing about them now as they appear to have hit an impasse.

This is depressing on a number of levels. One of the main bits of excitement with the Oracle takeover of the stewardship of Java was that seemingly intractable conflicts might get shaken up. Indeed, pre-merger Oracle had firmly backed Apache in its dispute with Sun within the JCP; the fact that it has suddenly realized the validity of Sun’s position now that it has ownership of the Java trademarks is a stark reminder that the maneuverings of companies in situations like these have little to do with stated ideals and everything to do with money and power. The Harmony dispute is holding up a number of advances, including the formal release of Java 7. And Android is certainly the most interesting thing going on in the Java mobile space at the moment — Java ME is more and more a driver of second-tier feature phones, but not the smartphones of the future — and having it walled off from official Java helps nobody — not Android developers, and not Java or Oracle.

Ryan Paul wrote a piece for Ars Technica yesterday that tried to allay fears about Android fragmentation. At the core of his argument is the Dalvik VM: he says that its constant presence across Android implementations ensures that code written for Android can work across Android models and implementations. But what happens if the Java dialect used to write Android apps drifts away from the standard Java as certified by Oracle and the JCP? Android has already got itself kicked out of the Linux kernel, so the platform my find itself in an awkward position in regards to both of the technologies that underlie it.