Saturday, November 03, 2007

The Leopard and Java 6 Issue

Everybody in the Java community kept their keyboards busy lately ranting either against the fact that Apple's latest Mac OS X version doesn't include Java 6, or against those ranting against Apple's decision.

I can't deny the issue is bugging me, but not because of the same reasons: I don't really care about using the very latest Java 6 APIs or using the nice splash screen or getting a slightly faster startup time. Here is the problem, the way I see it:

On one side we've got Microsoft's Vista, which is clearly going to be the future mainstream OS, despite the fact that today most people are unhappy with it. Now, if you search the web to find out about Java and Vista compatibility, you'll find that the version of Java designed to work with Vista is Java 6. Java 5 was reported to have a huge number of serious issues on Vista. Sun did a great job in fixing many of them in JDK 5.0u13, but one may wonder how many others have not yet been found. To make the story short, if you want to be sure your application works fine with Vista, you better build it with Java 6.

On the other hand Leopard doesn't have Java 6 yet - well it has it, but it's in Beta.

So if you develop a product in Java and want to target both Mac OS X and Windows clients, you must make two different releases: one that that is Java 6 based, for Windows, and one that is Java 5 based, for Mac OS. This is far from being the end of the world, but it is a little bit annoying.

Things would be so much more simple if either Sun would make a good Java 5 release for vista - which might just be the case with 5.0u13 or if Apple would finalize Java 6 for Mac OS X.

Labels: , , , , , ,