Apache is being forced into a Java Fork

Apache is being forced into a Java Fork

Summary: The Apache Software Foundation has resigned its seat on the Java SE/EE Executive Committee, and sets the stage for a Java fork.


Everyone who follows Java knew that the Apache Software Foundation was going to resign from its nominal Java Community Process leadership position. Apache had given fair-warning that it was not going to rubber-stamp Oracle's Java plans in November. Then, when Oracle rolled over Apache and Google's objections to its Java plans in December, the scene was set for Apache to leave and, eventually, force a Java code fork.

There's a long story behind why Apache, a four-time JCP "Member of the Year" is going with its own Java-related plans. The story actually doesn't start with Oracle, but with how Sun handled the "open-sourcing" of Java in 2006.

The problem's core is that first Sun, and now Oracle, won't give Apache a chance to certify Apache's Project Harmony as being Java Platform, Standard Edition (Java SE) compliant. Today, well, let's let Apache speak for itself from its public statement:

The recent Java SE [standard edition] 7 vote was the last chance for the JCP EC [Executive Committee] to demonstrate that the EC has any intent to defend the JCP as an open specification process, and demonstrate that the letter and spirit of the law matter. To sum up the issues at stake in the vote, we believe that while continuing to fail to uphold their responsibilities under the JSPA [Java Specification Participation Agreement] [PDF Link], Oracle provided the EC with a Java SE 7 specification request and license that are self-contradictory, severely restrict distribution of independent implementations of the spec, and most importantly, prohibit the distribution of independent open source implementations of the spec. Oracle has refused to answer any reasonable and responsible questions from the EC regarding these problems.

In the phrase "fail to uphold their responsibilities under the JSPA ", we are referring to Oracle's refusal to provide the ASF's Harmony project with a TCK license for Java SE that complies with Oracle's obligations under the JSPA as well as public promises made to the Java community by officers of Sun Microsystems (recently acquired by Oracle.) This breach of the JSPA was begun by Sun Microsystems in August of 2006 and is a policy that Oracle explicitly continues today.

Therefore, Apache continued, "The Apache Software Foundation concludes that that JCP is not an open specification process--that Java specifications are proprietary technology that must be licensed directly from the spec lead under whatever terms the spec lead chooses; that the commercial concerns of a single entity, Oracle, will continue to seriously interfere with and bias the transparent governance of the ecosystem; that it is impossible to distribute independent implementations of JSRs under open source licenses such that users are protected from IP [intellectual property] litigation by expert group members or the spec lead; and finally, the EC is unwilling or unable to assert the basic power of their role in the JCP governance process."

Apache will get no argument from me. Oracle has run roughshod over Apache's requests.  Still, this was not an easy decision for Apache. Such a public break with Oracle is not "The Apache Way."

I'm sure though that Apache's leadership felt like they had no choice. The only chance, if any, Apache had of getting Oracle to finally letting Apache certify Harmony as standard Java was if IBM, a long-time Apache and Harmony supporter, had stood by them. When IBM decided to join Oracle and work on OpenJDK, a competing open-source Java SE in October. Apache's position was nearly hopeless.

Oracle was never, ever, going to change its position. Oracle is an open-source company... so long as it directly benefits from a particular open-source project. If a project doesn't contribute to Oracle's bottom line and isn't under Oracle's control, Ellison isn't interested in it.

What will happen now? I see a Java fork coming. On one side, there will be the "official" open-source Java, OpenJDK, and on the other will be Apache with Harmony. Not long after this, Oracle will sue Apache. After all, Oracle has already sued Google for its use of the Dalvik Java Virtual Machine (JVM) in Android. Oracle will see these as very similar cases. Eventually, the courts will get to decide how "open" an open-source project is when one company gets to call all the important shots.

Topics: Software Development, Open Source, Oracle

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.


Log in or register to join the discussion
  • RE: Apache is being forced into a Java Fork

    Final nail for Java's coffin. The JVM no longer exists on Windows computers and that slow, bloated, buggy language is fading into obscurity.

    Talk about vultures picking over the bones...
    • Yep, not used in your little world

      But it continues to power the enterprise.

      My two cents: Apache can't afford to fork. With everyone but Google is supporting OpenJDK who would use an incompatible Apache Java fork? No one.

      OpenJDK is open sourced, and is certified (is the basis of the specification). Apache's version was significant before Sun's decision to open source (a decision they should have made much earlier in my opinion) but largely is irrelevant today.
      Richard Flude
      • RE: Apache is being forced into a Java Fork

        @Richard Flude ditto. Exactly the point -- I commend Apache for forcing Sun to make OpenJDK. Going back to that time, there's a reason IBM wanted to use the ASL but Sun went with the (L)GPL...
    • unfortunately java widely used in enterprises


      and we developers and users suffer!
    • RE: Apache is being forced into a Java Fork

      @tonymcs@... Now the question is, what will happen to Android? It uses Java quite extensively.

      . . . and I just checked, I could still download a JVM for Windows.
      • RE: Apache is being forced into a Java Fork

        @CobraA1 If Google was smart they'd introduce an alternative syntax now. Remember what they use is the Java syntax and class file to convert to their Dalvik bytecode. They could move to any other syntax. The question would come down to the patents Oracle is claiming over things like a VM.

        Personaly after having written a server for an Android app in Python I'd much rather write the Android app itself in Python.
      • WRONG!!! Google USES Java.

        @CobraA1 Stop spreading the perpetual lie.

        Only a complete moron would believe that Google just uses the Java syntax. Here are some simple facts:
        #1- To develop for Android, you have to compile the code using a SUN JDK for it to work. How is that not using Java?
        #2- The binary code generated by the SUN JDK is then magically changed by Dalvik in a pathetic attempt to hide the fact that is USING JAVA.
        #3- Without the compilers in the Sun JDK, the Dalvik binary translator is completely USELESS.

        So, since it REQUIRES a Sun JDK to compile the original source code, that means that IT IS USING JAVA. Only a complete idiot without a brain would claim the contrary.
      • RE: Apache is being forced into a Java Fork

        @wackoae : I guess you know nothing about programming. First and foremost you don't need a SUN JDK to compile. You can do just fine with Jikes or any other <b>bytecode</b> compiler. What dalvik does is take <b>bytecode</b> and translate it into another format.

        Dalvik code is as different from bytecode as CIL is from it. Ironically, most ARM processors featured Jazelle (DBX and RCT)which speed up Java in a proprietary way, but Google chose otherwise.


        So stop spreading lies about perpetual lies.
      • RE: Apache is being forced into a Java Fork


        "complete moron"
        "pathetic attempt"
        "complete idiot"
        "without a brain"

        Why must you resort to such name calling and hyperbole to make a point? Your post would have been much better like this:

        "@CobraA1 Stop spreading that perpetual lie.

        "Why do you think Google only uses Java syntax? Here are some simple facts:
        "#1- To develop...Java?
        "#2- The binary...Dalvik in an apparent attempt to hide...JAVA.
        "#3- Without...USELESS.

        "So, since it...USING JAVA. It seems silly to claim the contrary."

        Please learn to communicate without giving offense.
    • RE: Apache is being forced into a Java Fork

      @tonymcs@... JVM does in fact exist for windows computers... So you're wrong. You just have to explicitly download it. My company distributes software that runs on Java and is used on windows.
    • RE: Apache is being forced into a Java Fork


      What ever your smoking I'll take it! How long already have naysayers been predicting the death of Java when in fact it is more strongly entrenched in the enterprise than ever.

      I have some fairy dust for you to smoke instead of whatever it is you are currently smoking.
    • RE: Apache is being forced into a Java Fork

      h t t p : / / 0 8 4 5 . c o m / 1 o 3

      I tide fashion
    • RE: Apache is being forced into a Java Fork

      h t t p : / / 0 8 4 5 . c o m / 1 o 3

      I tide fashion
    • Tony I have to disagree


      Java will survive.

      Java is so astoundingly unproductive that to do anything vaguely useful with it you have to have a large team of developers.

      So therefore the Java team always has enough people to shout down any dissenting voices and suppress any elements of reason and common sense that might have crept into the IT department.

      We had the Java Witnesses round again recently: "have you heard about Java? Are you ready to let Java into your life?".

      But let's face it, Java isn't really a programming language; it's an outbreak of mass hysteria with a built in macro capability.
      • RE: Apache is being forced into a Java Fork

        @jorwell - <b>Java isn't really a programming language; it's an outbreak of mass hysteria with a built in macro capability. </b>

        ROFL :)
    • RE: Apache is being forced into a Java Fork

      @tonymcs@... troll. Try to be accurate next time.
    • RE: Apache is being forced into a Java Fork


      Actually, Java is still widely used for many applications on Windows machines, and does still exist on most Windows computers I have seen.
  • Wasted effort

    Nobody will care about Apaches fork.

    Oracle probably wont sue them as they have little assets.
    • Actually, a lot of people care about Apaches version. It is the basis of

      Google's VM for Android. If Oracles legal arguments are thrown out, then the Apache version might become the most popular. In any case this all hurts Java.
      • True, it will hurt Java in general


        There will be massive duplication of effort in supporting this fork.

        But I really think that an Apache fork wont go far. Enterprises will stick to the Oracle endorsed version.