PDA

View Full Version : OpenJDK not the same as JDK




mrbash
Nov 12, 2010, 10:56 AM
There has been a lot of community members posting that its great news that OpenJDK will be available on OSX.

But its not, and anyone who is a Java developer knows why.

I don't mean to condescend but I wanted to explain why this isn't great news.

First, there is a difference between the JDK and OpenJDK. The former will have performance features not available in the latter. Essentially, Oracle wants to make money on Java (something Sun couldn't do). The really clever part to this is, they use community labor to produce a new JDK which they can all the source code from, but they don't have to contribute any thing they don't want to.

Second, Apple will not be contributing all of their current JVM code to the OpenJDK because they use a number of hidden API calls. SO there will be a great deal of work to be done to get OpenJDK onto OSX.

Third, the OpenJDK platforms will not be released in lock step with the paid JDK platforms. It will be released after.

Essentially what this all means is that neither Apple or Oracle wanted to make the effort to produce a JDK/JVM for OSX, but didn't want to totally abandon it either.



jared_kipe
Nov 12, 2010, 12:07 PM
So getting something is worse than nothing?

lee1210
Nov 12, 2010, 12:16 PM
How do you know there won't be a paid JDK from Oracle for OS X, leaving the options the same as every other platform?

-Lee

mrbash
Nov 12, 2010, 12:24 PM
So getting something is worse than nothing?

Not at all. I welcome the code contribution Apple will (hopefully) make to OpenJDK. It just won't be the same as having Apple develop a JDK/JVM on their own. I wanted to make this point because there appears to be lots of people who don't get that point.

I never thought that Java would die on OSX, I was sure that someone would eventually start supporting it. But without Apple's support, particularly their private APIs for SWING/AWT, it would be long and difficult migration. In the mean time developers who rely on Java on OSX (like myself) would either have to use the older JDK, or live with graphical issues (i.e., apps that don't look native).

How do you know there won't be a paid JDK from Oracle for OS X, leaving the options the same as every other platform?

-Lee

I don't, but it is more than reasonable to assume there won't be one until Oracle announces something.

The paid JDK is designed for servers, and the licensing will likely be set up that way. Most development on OSX are desktop apps.

talmy
Nov 12, 2010, 03:52 PM
I've used Java for 12 years and only for desktop apps. I've relied on it for portability (yes, write once, run anywhere) under Windows, Solaris, Linux, OS/2 and recently OS X. My experience has been that Apple's handling of Java has been the worst. Poor performance, problems with running multiple threads (that don't occur with other platforms), late updates and bundling that forces OS release upgrades to get newer Java versions have been the major irritants. I haven't seen things this bad since I used OS/2 and IBM gave Java a similar "treatment". I'll point out that at the time IBM claimed that they wanted to be the premiere platform for Java as well!

So from my POV, this looks like positive news.

sanPietro98
Nov 12, 2010, 04:50 PM
Third, the OpenJDK platforms will not be released in lock step with the paid JDK platforms. It will be released after.

The OSX version of Java has NEVER been in lock step with the official JDK release. So there's nothing new here. It often lagged by a year.

cube
Nov 12, 2010, 04:58 PM
IBM joined OpenJDK now.

mrbash
Nov 12, 2010, 11:24 PM
The IBM membership is curious since they were such strong supporters of Harmony. The rumours are that Oracle gave IBM a licence for Java in perpetuity in exchange for joining OpenJDK.


I forgot to add, what I think is the biggest minus to the Apple decision is that Java will no longer be guaranteed to be on the Mac. I thought it was fantastic how you could say that your program will run on OSX if you had a particular version of OSX. Now, it's not just the version of OSX, but also the end user has to install their own JRE.

Essentially, Java used to be an 'almost' first class citizen of OSX.

karsten
Nov 13, 2010, 02:44 AM
i still dont trust the way oracle is handling java. that combined with the secrecy of apple still makes java on osx seem tenuous to me. i dont like that feeling, as its the opposite of what java was meant to be, write once run many now theres too many variables on osx it seems :/

cube
Nov 13, 2010, 09:15 AM
i still dont trust the way oracle is handling java. that combined with the secrecy of apple still makes java on osx seem tenuous to me. i dont like that feeling, as its the opposite of what java was meant to be, write once run many now theres too many variables on osx it seems :/

Uncertainty about the future of Java on OSX is not Oracle's fault. It is Apple's fault.

macridah
Nov 13, 2010, 10:24 AM
I'll take this news as positive. At one point we were uncertain about Java on the mac and now this clears some smoke. Apple said they will include SE6 in Lion and Oracle will distribute 1.7 when it comes out.

Now i wish apple would allow a micro JVM for iPad and iPhone ... come on steve, hook up larry.