Oracle has launched a patent and copyright infringement law suit against Google regarding its use of the Java on Android devices. In a brief statement Oracle said "In developing Android, Google knowingly, directly and repeatedly infringed Oracle's Java-related intellectual property".

Oracle took possession of the rights to the Java programming language when it acquired Sun in the deal that was eventually closed earlier this year. According to the filing, published on Scribd, Oracle says that Android infringes the US patents which were originally granted to Sun: 6,125,447, 6,192,476, 5,966,702, 7,426,720, RE38,104, 6,910,205 and 6,061,520.

The copyright element of the suit refers to Google having copied and encouraged others to copy, elements of the Java platform's code, specifications or documentation. Oracle is seeking triple damages for wilful infringement, noting that Android competes with Oracle licensed Java ME implementations on mobile devices. According to a recent Gartner report, Android devices now rank third, behind Symbian and RIM OS, in terms of market share.

The patents relate to the implementation of virtual machines, tools and compilers. Although Sun open sourced Java in the form of OpenJDK, under a GPL2 licence, it only assured companies that produced fully compatible Java that it would not use its patent portfolio against them and even then limited that promise to desktop and server implementations, retaining licensing rights for mobile devices.

As far as this promise is concerned it seems incidental to the the suit as it's patent assurances would not have applied to Google. Google implemented its own Dalvik virtual machine without using OpenJDK, runs it on mobile devices and isn't a "fully compatible" Java implementation by design. For example, the tools for compiling Dalvik code use a Java compiler to generate Java byte code and then reprocess that code into the Dalvik byte code format, optimised for mobile devices. For the standard Java library, Google has used the Apache Harmony code, an open sourced alternative to Sun's implementation of the the libraries, that was created before OpenJDK.

(djwm)