I just found out that the Sun JDK is now available for Mac (yay!), and it got me thinking, how should Java developers proceed with that knowledge?
Here's the quandry, it seems to me. Most Mac Java development in the last few years has probably been JDK 1.6 compliant, and using the Mac JDK. Since the Mac JDK functions somewhat differently from the Sun JDK, there almost always is some unique Java code specifically for Macs needed to make complicated things work cross-platform.
With the advent of Sun JDK 7 on Mac, all that extra jumping through hoops shouldn't be necessary, and it should be a no-brainer to update code to take advantage of the consistency and easier development ability.
But, here's the problem -- the Mac Sun JDK 7 (which is even available from the Java downloads page like the other normal ones) only works on OS Lion or better. There are still a decent number of Mac users who run Leopard or Snow Leopard, on which JDK 7 won't install. I've tried.
So, what do we do? Do we keep relying on a deprecated Mac JDK with security holes (Apple's own words -- you can Google it) for the sake of keeping more users, or do we update to a secure, consistent JDK and require users to update their OS's?
It's a thorny question, and I don't have a good answer. My instinct on this is to update the code and require OS Lion, but how much of a deadly sin is it to do that with existing software? For example, the software I maintain has been Mac Java 1.6, Mac JDK compliant for almost 4 years.
What other advantages, disadvantages, or arguments am I missing? Is there a clear-cut answer? I'm sure someone else must have run into this train of thought; what does everyone else here think?
This post has been edited by Zel2008: 25 July 2012 - 07:09 AM