And James Gosling, the father of Java, has been lobbying for the Java platform's independence from Oracle since before the Sun acquisition. Oracle proposed the creation of an independent Java foundation in 2007, back when Sun was still an independent company. Now that Oracle itself owns Java, however, its interest in such a foundation seems to have all but vanished. "I'm not holding my breath, but if enough customers rose up in revolt, it could actually happen," Gosling wrote in August.
For Java to remain a community-driven platform is of particular importance to the open source community. Among the ASF's complaints is that Oracle (like Sun before it) has undermined the Apache Harmony project by denying the ASF access to the Java Technology Compatibility Kit (TCK), a suite of tests used to check a Java implementation for standards compliance. Oracle's license terms for the TCK are incompatible with the Apache License, making it impossible for the ASF to certify Harmony as a compliant Java SE implementation. In effect, that leaves Oracle as the sole provider of an open source Java implementation -- which, ASF argues, goes against the founding principles of the JCP.
Is there life after Java?
So far, Oracle has been mostly mum on the JCP members' complaints. In a blog post, Henrik Ståhl, a product strategist for Oracle's Java Platform Group, noted David Lea's exit from the JCP with regret. "Needless to say," he wrote, "we don't agree with this bleak description of reality. We believe that the JCP is and remains a good organization for ushering the Java standards forward."
If the ASF echoes Lea's vote of no confidence in the JCP, however, and enough other members follow suit, it could effectively unravel the Java community as a whole. In particular, educators, academics, and researchers will have little incentive to remain loyal to a platform that has become foremost a proprietary product aimed at Oracle's lucrative enterprise customer base.
Independent developers could face the toughest decisions of all. Java has become as entrenched in business computing as Cobol was decades ago. Even if the JCP dissolves, many developers will be left with few alternatives. Jumping ship to Microsoft .Net offers little advantage over even an Oracle-dominated Java. C++ is a powerful, mature language, but it lacks Java's portability, its sandbox security model, and its diverse set of standardized APIs. Other VM-based languages, including Perl, Python, and Ruby, can't match Java's performance.
Google could yet emerge as the dark horse in this race. The search giant is currently embroiled in a patent dispute with Oracle over its use of Java technology in its Android smartphone platform. That could be enough to encourage it to fast-track its nascent Google Go language to become a head-to-head competitor with Java.
Even better, however, would be if Oracle heeds Ian Skerrett's advice and learns how to play nice in the Java community. Oracle got off to a bad start, but it's not too late to smoothe over current conflicts and appease its detractors. For instance, it should grant the ASF access to the Java TCK under fair, open source-friendly terms as a gesture of good faith. Second, it should empower Oracle representatives to begin an honest, thorough, ongoing, two-way discussion with JCP members regarding its plans and position toward the Java platform.
The alternative, of course, for Oracle to keep going the way it is now. But if chooses to do so, Oracle may well find that the more it tightens its grip, the more developers slip through its fingers.
This article, "The coming war over the future of Java," originally appeared at InfoWorld.com. Read more of Neil McAllister's Fatal Exception blog and follow the latest news in programming at InfoWorld.com.