Such an endeavor has been the subject of recent chatter on the OpenJDK online newsgroup. OpenJDK is the official, Oracle-sanctioned version of open source Java. Some observers say a version of OpenJDK for Android would bring Android development to the many millions of Java developers. Java applications could run on Android devices -- so might such a project get under way From the looks of it, the answer right now would have to be no.
[ Oracle has shown JavaFX rich client software running on Android.| Think you know Java Test your programming smarts in InfoWorld's Java IQ test. | For more Java news, subscribe to InfoWorld's Enterprise Java newsletter. ]
Representatives for Oracle, which has eyed an appeal of the Android verdict, and Google declined to answer the question. Others in the Java space were not optimistic. "What OpenJDK [for] Android would provide would be a true Java environment for Android. For the majority of the world that understands how to develop using Java, that would be a great thing," said Scott Sellers, CEO of Java virtual machine vendor Azul Systems. "Whether or not I think it would happen, that is a different question entirely."
With Android, applications run on the Dalvik managed runtime. Android's environment is not compatible with Java even if it is similar, Sellers said, adding that Dalvik entails a learning curve. But he does not see Google being eager to move to OpenJDK. "Google doesn't have a vested interest in enabling a true Java environment for Android," he said. Sellers cites open source licensing differences as a part of the issue. OpenJDK leverages the GNU General Public License, in which any code changes or fixes must be contributed back to the community at large, a prospect not attractive to some commercial vendors, Sellers said. Dalvik abides by the Apache license, which does not have this problem, he notes.
Gosling: OpenJDK on Android could be doneThe possibility of OpenJDK on Android doesn't have any technical obstacles, Java founder James Gosling says: "Technically, it's not a huge problem. Android is just Linux on ARM, and there's already a nice ARM/Linux version of OpenJDK. There are issues that would make the current binaries inappropriate (mostly graphics integration), but it's not insurmountable." Major benefits would be performance and compatibility, Gosling says.