Open source XMLVM aims to allow Java apps to run on iPhone
A new open source project, XMLVM, aims to allow developers to write Java applications which can run on the iPhone. The project is in its early stages, but is all based around a technology which translates Java class files or .Net executables to an XML document. The XML representation of the code is the crux of XMLVM; transformations can be applied to XMLVM XML files to convert them to other target environments. One of these targets is Objective-C on the iPhone, allowing Java applications to notionally run on the iPhone. The iPhone SDK agreement that developers have to sign up for forbids Java and other languages being implemented on the iPhone, but this route bypasses that restriction by creating native applications.
The Java code is written to use a Java library which stands in for the iPhone's Cocoa UI components. Once the Java is compiled to a Java .class file, it is then converted XMLVM. The system then applies the iPhone transformation and produces Objective C code which can then be compiled for the iPhone as a native application.
Arno Pruder, one of the developers of the project and an Associate Professor at the San Francisco State University, recently presented a Google Tech Talk on the iPhone cross compilation where he examines, in an hour long detailed presentation, the various issues and solutions that the XMLVM developers have come up with.