I came across this link during another fit of frustration with Xcode and Obj-C. XMLVM is a cross-compiler that can cross-compile Java code and turn it into Obj-C code that will run on the iPhone. Well, sort of. It runs on the iPhone simulator, but to actually get it to work on the device you're still bound to Xcode for various signing reasons. However, the core portion of Cocoa has been faithfully reproduced in Java, so you get all the benefits of Eclipse while developing: code completion, continuous compile-time checks, even a simple iPhone simulator written in Java that uses Swing to mimic the UI classes of the iPhone. All of that being said, I won't be using XMLVM for any of my projects (yet), but I certainly hope that this will continue to be developed. It has great potential.
And here's a very useful article on tuning the garbage collection in Java. This is a must-read for Java devs. I found it very interesting.