Google’s next Android release will use Oracle’s OpenJDK APIs

According to VentureBeat, Google is replacing its homegrown implementation of Java APIs in Android with Oracle's open-source OpenJDK.  Google's Narayan Kamath let the cat out of the bag by making some interesting additions to the Android source code tree, under the label "Initial import of OpenJdk files." Google itself then confirmed the move to VentureBeat with the following statement:

"In our upcoming release of Android, we plan to move Android’s Java language libraries to an OpenJDK-based approach, creating a common code base for developers to build apps and services. Google has long worked with and contributed to the OpenJDK community, and we look forward to making even more contributions to the OpenJDK project in the future."

When asked about the reason for the change, Google said that with the release of Java 8, it wants to put more resources into OpenJDK, where its team can have a bigger impact on development. Like any other open-source contributor, Google will share its improvements to OpenJDK with the community, as well.

Google could be making this move because of a US federal court ruling that concluded Oracle could copyright the "structure, sequence, and organization" of its Java API. This move could be seen as an attempt to shield both Google and Android from future legal action related to the company's implementation of Java features in its mobile OS.

Comments closed
    • alrey
    • 4 years ago

    Android is doomed. Google spent a lot of time and resources optimizing the dalvik vm and now its moving to the bloated openJDK,

    Drop the Java already and just move to c/c++.

      • Polum
      • 4 years ago

      With their heavy investment in Java, I highly doubt they will do that. But that’s definitely what they should do.

      • Puiucs
      • 4 years ago

      Have you been living under a rock or something? No self respecting company uses C/C++.
      Every small or big company uses java, there is no C with the exception of old legacy software (like some banks, but even those are rare).
      And don’t confuse game development with real software development, if you mention it in an interview all you’ll do is embarrass yourself.
      C has so many problems that no amount of coding can make it as secure or as flexible as java. (maybe C#, but definitely not C/C++) Do you even understand what it means for multimillion dollar software to be built on top of such problematic code? And you have no idea how hard it is to maintain and update C.

      Take it from a professional, go take some Java and Python courses and stop daydreaming about C.

        • alrey
        • 4 years ago

        Are you serious or being sarcastic?
        Just think on what language the apps for IOS are written and they are snappy and responsive.

        You’re right about many companies using Java but we are not talking about business apps here. We are talking about consumer apps (and most of the best selling ones are games).

          • ermo
          • 4 years ago

          Yeah, and Apple went to the trouble of gestating the Low Level Virtual Machine compiler infrastructure and are now pushing their Swift language hard over Objective C for iOS developers.

          Hardly a ringing Objective C endorsement there…

        • just brew it!
        • 4 years ago

        C/C++ is still used quite heavily in embedded and systems programming. The Windows and Linux OS kernels are written in C. All of the major Linux DEs are either C or C++. Avionics software is still mostly C and C++ (and C++ is even a relatively recent development in that industry). Military/defense has basically moved from Ada to C/C++ for a lot of stuff too.

        Just because nobody in their right mind codes web/mobile applications in C/C++ these days doesn’t mean those languages are dying.

        And nobody in their right mind would code anything that needs to have consistent low latency and/or real-time performance in Java. Sure, Java performance is fine most of the time. Then the garbage collector kicks in at an inconvenient moment, and… *hiccup*!

      • blastdoor
      • 4 years ago

      Or they could adopt/adapt/fork Swift.

    • kuttan
    • 4 years ago

    That means some App compatibility issues with the new Android incorporating OpenJDK ?

    • hubick
    • 4 years ago

    Android is already bound by the GPL due to the Linux Kernel, so having used the Apache Harmony clean-room implementation of Java with it’s Apache license wasn’t really changing the game for them. Though, it wasn’t beyond Google’s resources to potentially replace the GPL Linux Kernel in Android someday.

    As per the OpenJDK’s GPL license, they aren’t bound to Oracle at all, and are still free to make whatever modifications to OpenJDK they want.

    Having those changes merged upstream by Oracle? That’s another matter.

    Unless Google also licenses their changes under the CDDL, there’d be little chance of Oracle accepting them, and even then it will be interesting. I would love to see Google run with OpenJDK and add enough features that developers all switch to Google’s implementation. That would mean that Java would finally truly become an open source project, where all those involved must abide by the GPL and only the GPL.

    If anything, I’ve been worried Google has been getting a little too powerful with it’s stewardship of Android, and this moves a huge additional chunk of that platform under the GPL (which couldn’t really be potentially replaced like the kernel), which will force Google to give all their work back to the community. So, this serves as a little additional insurance for users that Google will always have to play nice with Android and open source, or risk losing control of it to a fork. If Android becomes THE universal platform for application development, being that it’s GPL’d, that would be a great thing for consumers (far better than the completely proprietary Windows or Mac API’s).

      • moog
      • 4 years ago

      .NET is open source.

        • Flying Fox
        • 4 years ago

        Depends on which library and component that you are talking about.

        • hubick
        • 4 years ago

        People are still worried that Oracle will still sue Google over it’s use of OpenJDK, saying Google’s use violates their patents, and that the GPLv2 license doesn’t include an implicit patent grant ( [url<]http://en.swpat.org/wiki/GPLv2_and_patents[/url<] ). I don't really buy that. But with .NET though, Microsoft's patent grant is *far* more restrictive than even the implicit one granted by the GPLv2: [url<]http://endsoftpatents.org/2014/11/ms-net/[/url<]

    • ronch
    • 4 years ago

    I predict a future of smartphones and tablets with SPARC Inside.

      • willmore
      • 4 years ago

      Oh, please, no. Please let SPARC RIP.

        • jensend
        • 4 years ago

        No, please don’t. SPARC is very unusual among modern ISAs; not only can you use it without patent licensing problems, but there are also open source implementations good enough to be still worth manufacturing for some purpose or other today. (One of those is the European Space Agency’s fault-tolerant radiation-hardened SPARC derivative.) Maybe we don’t hope to see it in phones, but with that kind of readiness for customizing, it will probably find niche applications for many years.

        • maxxcool
        • 4 years ago

        if there was a low power cpu that had 64 threads I imagine it would do fine.. you’d need a good igpu to bind with it however.

    • UnfriendlyFire
    • 4 years ago

    “This move could be seen as an attempt to shield both Google and Android from future legal action related to the company’s implementation of Java features in its mobile OS.”

    And that means Google is now at the mercy of Oracle’s security practices, or lack of thereof.

      • chuckula
      • 4 years ago

      Not necessarily. Google is adopting OpenJDK’s [i<]API[/i<] but that certainly doesn't mean that Android is running on a copy of the actual implementation of OpenJDK that you can download right now. If there is a security issue that is related to a fundamental flaw in the API itself (they can happen but are relatively rare) then Google (and Oracle) would have a problem, but Google is not tied to the low-level implementation of Oracle's runtime environment.

        • just brew it!
        • 4 years ago

        Also, given that OpenJDK is Open Source, Google also has the option of identifying and fixing any such security holes themselves.

          • Welch
          • 4 years ago

          And if they do that more proactively than Oracle themselves, the community would likely just look to Google for it’s update of the API. Essentially becoming a fork of an API that is preferred to the original.

            • Mr Bill
            • 4 years ago

            There needs to be a fork anyway, because Oracle should never have won the case to copyright the Java API.

    • Mr Bill
    • 4 years ago

    And so, Java and its tainted API, will be gradually abandoned.

      • BlackStar
      • 4 years ago

      Right, by adapting the Java API, the Java API will be gradually abandoned.

      Wait, what?

        • Mr Bill
        • 4 years ago

        Unaware OpenJDK has its own Open API, are you?

          • just brew it!
          • 4 years ago

          According to Wikipedia: “OpenJDK is the official reference implementation of Java SE since version 7.”

          So the OpenJDK API *is* the official one.

Pin It on Pinterest

Share This