Open source Java 7 for Mac code appears
Port project, ahoy!
The OpenJDK project has released the first code for the Apple-backed open source version of Java Development Kit 7 for Mac OS X.
The initial code – a BSD port – is now available from the new Mac OS X Port Project on the OpenJDK website. The project already offers a mailing list and project wiki, and a bug reporter in on the way. The latest developments are available from the project status page.
In mid-November, weeks after Apple said it would deprecate the existing incarnation of Mac Java, Steve Jobs and company calmed developer fears by announcing they would join Oracle's OpenJDK effort, contributing "most of the key components, tools, and technology" for a Java SE 7 implementation on Mac OS X. This includes a 32-bit and 64-bit HotSpot-based Java virtual machine, class libraries, a networking stack, and the "foundation" for a new graphical client.
Java SE 6 is still available with Mac OS X Snow Leopard, and it will also be included with the upcoming Lion release of the OS. But after Lion's release, all future versions of the OS will not include Java. Instead, developers will obtain Java for Mac from Oracle. ®
Update: This story has been updated to make it clear that the initial code is a BSD port.
second class user experience
Well, a second class user experience is pretty much the definition of Java desktop development anyway, so will they notice any difference?
I don't think I have much in the way of Java desktop software installed - Eclipse & Aptana - and I think I can cope with them moving to non-native widgets. Eclipse is already so 'non-native' in other ways anyway.
Kevin - not having a vendor shipped Java implementation puts the Mac in the same situation as Windows. That is a downer in some ways - when I first started using Macs, I loved the fact that you could run Jake using WebStart / that Java web sites just worked.
But the reality is that the number of sites using Java or ActiveX these days is absolutely minimal, particularly as a lot of corporate Windows installs now disable both (while bizarrely allowing Flash, despite it's equally poor security record).
I don't see the anti-competitive angle
Assuming you can't bundle the Java runtime into your app (hence: no other optional install components required), just distribute somewhere other than Apple's App Store. Apple have themselves donated a large chunk of previously proprietary code to help the OpenJDK team start getting up to speed, so they probably have some sort of interest in keeping Java available in some form (keeping university science students on board, maybe?).
OpenJDK will have a native Mac Gui
Apple are donating their current Java code base and tools, including the graphical bindings, so you can expect OpenJDK 7 to not look too out of place on the Mac, see:
@Niall - As much as I like Apple products, you're right on the anti-competitive point. Basically, Google Android is taking Apple market share, and Apple doesn't want to help you learn Android's programming language, which is [mainly] Java.
This strategy has been good for them financially until now. Having to learn Objective-c/XCode/Interface Builder weeds out the weak, so there's a bigger share of dev dollars. However long term, I'm not sure this will cut the mustard. Devs will want to target as big a market as possible, so cross-platform is probably where App dev is heading (see Monotouch, Mosync, Airplay, Unity etc. etc.).
That's my 2p.