RoboVM stirs up another helping of Java for iPhone
Apple unlikely to get cross over this compiler
Regcast training : Hyper-V 3.0, VM high availability and disaster recovery
The free RoboVM, timidly launched as version 0.0.1, claims to bridge Java code into Objective C - including the native iOS Cocoa Touch APIs - providing greater portability to mobile apps.
The release announcement boasts:
RoboVM makes it possible to develop native iOS apps that use the CocoaTouch APIs in Java using familiar tools such as the Eclipse Java IDE.
The RoboVM is licensed under Apache v2.0, with the compiler falling under GPLv2, and is largely based on the Android core classes, but once plugged into Eclipse it allows Java applications to be launched in a simulator and compiled down to iOS apps.
At one point that would have been breach of the iOS developer rules, which clearly stated that code had to be created in C, but those rules were only written to annoy Adobe (whose Flash compiler so upset Steve) and were never applied to platforms such as Appcelerator's Titanium - which happily compiles AJAX apps into runtimes for iOS, Android and BlackBerry.
Once Adobe had been frightened off the restriction was dropped, but emulators are still verboten in the iTunes store, unless bundled with apps, as they could provide an alternative application distribution mechanism - which Apple will never allow. Since then, quite a few Java/iOS tools have emerged.
Oracle's ADF Module can spit out Android and iOS apps from the same code, which is based on Java and HTML5, and Google has a translation tool which will take (non-GUI) blocks of Java and convert them into Objective C for incorporating into iOS apps.
So Apple is unlikely to go chasing after RoboVM any time soon, and for those wedded to Java and not wanting to pay Oracle, it should provide a smooth transition into the iOS world though the team is keen to point out that it's still early days and some things aren't going to work properly.
But that's what beta releases are for, and the team has provided pretty-comprehensive instructions for those who want to give it a shot so there seems little reason not to, if one's love of Java and open source is still standing in the way of one's iOS aspirations. ®
COMMENTS
Re: Why would you ever want to do this?
Straight of the top off my head.
1. Maybe you already have a large java code base that you can reuse.
2. Maybe you consider Java to have better tool support.
3. Maybe your developers know Java and it's not worth the effort reskilling/hiring for one platform.
4. Maybe you want to write multi platform applications.
5. Maybe you don't want to buy each of your developers another development machine (and a very expensive one at that).
BTW, I've been writing obj-c for OSX and iOS for many years now and given the choice I'd prefer java but that is my personal preference. I also have a fairly large database of development time for various kinds of tasks on different platforms/languages/developer experience and java is for most things much quicker to develop, closely followed by .net.
Cross Platform ftw
Why anyone would want that abomination of a closed platform that is iOS to succeed it beyond me. People complain about the dominance of Windows on the desktop, but at least you can run anything you want on it. While Apple continue to refuse to allow side-loading of apps, they will continue to be the most anti-consumer company in the industry.
Re: Why would you ever want to do this?
Look at some thing like http://libgdx.badlogicgames.com/
You can write a game in Java and deploy it to multiple platforms including ios..
I guess you have never actually developed anything but most of the time you don't want to have to write the same stuff twice.

IT infrastructure monitoring strategies
Requirements Checklist for Choosing a Cloud Backup and Recovery Service Provider
Data control in the cloud
Cloud based data management
Enabling efficient data center monitoring