Site Archive (Complete)
Java Blog: An Apple and Java Each Day
Java
SWAINE'S CAFE

Black. No Sugar. Extra Caffeine.

by Mike Swaine
ERIC BRUNO'S BLOG

Java: The Daily Grind.

by Eric Bruno
October 04, 2007

An Apple and Java Each Day

For the past year, I’ve started each day with an Apple and Java. I’m not talking about breakfast - I’ve been working with Java on my MacBook.

Soon after I bought my MacBook, I downloaded and installed the Java SE 6 pre-release build, which hasn’t progressed in quite a while. In fact, I can’t seem to find it on Apple’s Developer Connection site for Java (http://developer.apple.com/java/) anymore. Although it’s in a pre-release state, it has worked for me without an issue, so I’ve been happy with it. I run Eclipse, NetBeans, Tomcat, MySQL, ServiceMix, and lots of other development tools and open-source components without issue.

However, many have criticized Apple’s lack of support for Java on the Mac; specifically, its lack of moving to Java SE 6 in release form in time for Leopard’s release. But exactly whose responsibility is it to release a Java binary for a particular platform? Some consider this to be Sun’s job.

Personally, I find the situation a bit ironic. After all, there have been many in the community who called for Sun to move Java to an open-source model for a long time. Sun did just that in 2006/2007. Now, many of the same developers are complaining that a commercial entity (Sun, Apple) hasn’t built a proprietary binary for the Mac OS X platform. Something’s not right here. After all, now that we have the open-source Java, OpenJDK (http://openjdk.java.net/), project, why hasn’t the community ported it to the Mac?

The answer, honestly, is that all of the components needed to do this haven’t been available until recently, many still aren’t, and what version is the OpenJDK exactly? Regardless, it’s rumored that Apple is actively working to port the OpenJDK project to Leopard, to be available sometime in 2008. I’m just surprised that it hasn’t been done already, as many Sun employees use Macs themselves. However, as David Herron blogged about a few months ago (http://weblogs.java.net/blog/robogeek/archive/2007/05/some_openjdk_an.html), there always seems to be complicated forces at work, such as the body of “encumbered binary code” that is only released in binary form because Sun doesn’t own the rights to the source code.

The end result is a chicken-and-egg situation: you can’t create a Mac OS X binary from the OpenJDK project because it contains binaries that aren’t OS X compatible. Hence, the time delay; Apple is more than likely working with related parties to gain the rights to build these binaries themselves without releasing the source so as to not violate license terms. The GPL alone is tricky; tack onto this the license agreements for the close-source pieces.

No matter how you look at it, my opinion is that Apple is not the bad guy here. Those that compare this situation to what Microsoft attempted to do in the ‘90s are being unfair. Microsoft was successfully sued by Sun for violating license agreements in order to serve their own purpose: splinter the Java language and the developer community and transform it into a Windows-centric language. Apple isn’t doing this. It just seems to have not had the resources to dedicate to advancing another company’s (Sun’s) intellectual property.

Now, I’ve used Windows, many distributions of Linux, Solaris, and Mac OS X, and I have to say that the Mac makes one heck of a desktop environment for Java developers. It would be nice if Sun, Apple, and the community could work together to assemble the coolest version of Java ever on what is arguably the coolest desktop OS available today: Mac OS X.

Happy coding!
EJB

Posted by Eric Bruno at 11:46 PM  Permalink




 
INFO-LINK


Related Sites: DotNetJunkies, SD Expo, SqlJunkies