Java fragmentation threatens as Oracle-Apache talks stall

No 'Harmony' for Android


Updated Google's Android will continue to run an unauthorized version of Java for the foreseeable future — something the Apache Software Foundation has warned will fragment the community.

Talks between the ASF and database giant Oracle on tests that could certify the open source version of Java running on Android have made no progress, the group told us.

Android implements ASF's Project Harmony — specifically, a Virtual Machine called Dalvik built on a subset of Harmony that recompiles Harmony class libraries for mobile devices with limited resources.

The ASF told The Reg that it has been in discussions to finally certify Harmony with Oracle, and other members of the Java Community Process (JCP), for the last few months.

Lack of movement poses a real problem. The big dog of Java mobile is Java Micro Edition (Java ME), which is on three million devices such as BlackBerries. Google's Android is growing fast, though, with a nine per cent share of the US smartphone market according to comScore and Nielsen.

If Android's growth continues — and it will with Google as its parent and OEMs such as Motorola and HTC delivering devices — it promises to establish a large base. And that will mean two Java camps: the tested and certified versus the untested and uncertified.

ASF president Justin Erenkrantz warned that if Harmony continues to go untested and uncertified, Java developers should be worried about fragmentation if the two camps drift further apart over time as more features are added to both Harmony and Android.

This is the second time Android's been snagged by fragmentation. Last year, Android's driver code was kicked out of the Linux kernel tree by Linux developer Greg Kroah-Hartman, who argued that Android is incompatible with the main project. Now there's genuine concern that Google's Linux and the main Linux kernel are growing apart.

"For now, it is pretty easy to take your standard Java library and use it on your Android device. However, as optimizations and innovations appear within the Android platform as well as within Harmony, this will inevitably lead to a fragmentation," Erenkrantz said.

"While this has not stopped Google innovating with Dalvik JVM (as an example), it does mean that it's not something that can officially be fed back into the rest of the 'certified' Java ecosystem.

"As the divide becomes inevitably larger between J2ME [now Java ME] and Android, developers will be forced to either add the complexity of making their applications work on both from the same code base, splitting the codebases, or simply choose one platform over the other."

ASF has promised to make things difficult for Oracle on the JCP until the matter is resolved. Erenkrantz said the ASF — a JCP member with voting power — will reject changes on specs for new versions of Java, claiming that they violate the group's governing agreement.

"Until Oracle agrees to permit permissive licensed implementations to receive a compatibility kit without 'field of use' restrictions, Apache will continue to try to educate the community on why harnessing innovation inside of the 'certified' Java ecosystem is so important but only if it doesn't restrict where the code can be utilized," Erenkrantz warned.

And that's what this whole thing boils down to. The tools used to validate independent implementations of Java such as Harmony are the Test Compatibility Kits (TCKs), which — unlike the rest of Java — are not available under an open source license.

ASF says Harmony cannot be certified as compatible with the official Java Standard Edition (Java SE) spec because of the field of use terms that accompany the TCKs. These would restrict how and where Harmony is used and - in this case - would limit Harmony to only running on desktop machines.

ASF says restrictions on the Harmony codebase would mean it cannot distribute Harmony to users under the Apache License.

The problem has fallen in Oracle's lap since it bought Sun Microsystems. Sun had overall stewardship of Java, leadership of most Java projects in the JCP, and power of veto on the JCP. It was Sun's decision to not open source the TCKs at the time it opened the rest of Java in a move that sparked a four-year public feud with the ASF. Today, just one open-source version of Java SE has been certified: OpenJDK, that was led by Sun.

Erenkrantz said: "Until this situation is resolved, we lack the ability to have [Harmony] certified and be considered on the same terms as OpenJDK."

ASF's president called the impasse and potential fallout disheartening. "Since this problem is rooted in legal and political issues, it's disheartening to see that developers are going to be forced to [choose between Android/Harmony and Java ME] for largely non-technical reasons. It simply didn't have to be this way," he said.

Oracle was asked for its side of the story, but — once again — declined to comment. ®

This article has been updated to clarify that it's TCK field of use restrictions that prohibit the ASF's ability to certify.

Similar topics


Other stories you might like

  • Heart FM's borkfast show – a fine way to start your day

    Jamie and Amanda have a new co-presenter to contend with

    There can be few things worse than Microsoft Windows elbowing itself into a presenting partnership, as seen in this digital signage for the Heart breakfast show.

    For those unfamiliar with the station, Heart is a UK national broadcaster with Global as its parent. It currently consists of a dozen or so regional stations with a number of shows broadcast nationally. Including a perky breakfast show featuring former Live and Kicking presenter Jamie Theakston and Britain's Got Talent judge, Amanda Holden.

    Continue reading
  • Think your phone is snooping on you? Hold my beer, says basic physics

    Information wants to be free, and it's making its escape

    Opinion Forget the Singularity. That modern myth where AI learns to improve itself in an exponential feedback loop towards evil godhood ain't gonna happen. Spacetime itself sets hard limits on how fast information can be gathered and processed, no matter how clever you are.

    What we should expect in its place is the robot panopticon, a relatively dumb system with near-divine powers of perception. That's something the same laws of physics that prevent the Godbot practically guarantee. The latest foreshadowing of mankind's fate? The Ethernet cable.

    By itself, last week's story of a researcher picking up and decoding the unintended wireless emissions of an Ethernet cable is mildly interesting. It was the most labby of lab-based demos, with every possible tweak applied to maximise the chances of it working. It's not even as if it's a new discovery. The effect and its security implications have been known since the Second World War, when Bell Labs demonstrated to the US Army that a wired teleprinter encoder called SIGTOT was vulnerable. It could be monitored at a distance and the unencrypted messages extracted by the radio pulses it gave off in operation.

    Continue reading
  • What do you mean you gave the boss THAT version of the report? Oh, ****ing ****balls

    Say what you mean

    NSFW Who, Me? Ever written that angry email and accidentally hit send instead of delete? Take a trip back to the 1990s equivalent with a slightly NSFW Who, Me?

    Our story, from "Matt", flings us back the best part of 30 years to an era when mobile telephones were the preserve of the young, upwardly mobile professionals and fixed lines ruled the roost for more than just your senior relatives.

    Back then, Matt was working for a UK-based fixed-line telephone operator. He was dealing with a telephone exchange which served a relatively large town. "I ran a reasonably ordinary, read-only command to interrogate a specific setting," he told us.

    Continue reading

Biting the hand that feeds IT © 1998–2021