Posted by editor
on November 21, 2007 at 8:18 AM PST
Java 6 for Mac, but not from Apple? Also:
Java Today: Developer preview of BSD-to-OSX Java port, Neal Gafter's latest closures update, and JavaFX Script Plugin for NetBeans 6 goes GPL
Weblogs: Extreme ME GUI makeover, SwingX 0.9.1, and Metro and jMaki Q&A
Forum Posts: BufferedImage leak, JDBC realm login hack, and printing the screen on Mac OS X with JDIC
Java 6 for Mac, but not from Apple?
Coming out of all the anger and disappointment of Apple shipping Leopard without Java 6 were several cries of "maybe the open source community should just take over." This was an option on a poll we did on the topic, and 11.6% of respondents preferred the open source community over Apple and Sun as their Java providers.
Well, with an Apple-developed Java 6 still nowhere in sight, this group may just get its wish. Landon Fuller has spent the past couple weeks working on porting BSD's Java 6 to Mac OS X, and announced late Monday that he was ready to offer a Developer Preview 1 Release .
I'm pleased to announce the first Developer Preview Release of the open-source port of Java 6 to Mac OS X. This release includes support for 32-bit and 64-bit Intel machines running Mac OS X Leopard (10.5). (Nearly) everything up to and including Swing (X11) is functional. Sound is not currently supported. While I've spent some time testing this release with my own projects, this preview release should be considered beta quality. The project is very much in need of additional community testing -- If you're hankering for Java 6, please give this a try!
I almost put an OpenJDK icon on this story when I posted it to the Mac Java Community yesterday, and then I realized that the various BSDs' Java almost certainly isn't OpenJDK-based. For one thing, OpenJDK is working on Java 7, and also preparing a GPL back-port to JDK 6 of their work, whereas BSD's covers J2SE 1.2 to Java SE 6. So, I do kind of wonder what license is in effect for this port. Landon points out that to get the sources, you have to agree to the Java Research License , whereas FreeBSD's Java Downloads say, somewhat cryptically, "the FreeBSD Foundation has a license with Sun Microsystems to distribute FreeBSD binaries for the Java Runtime Environment (JRE) and Java Development Kit (JDK)", not addressing the issue of source or, for that matter, what's in the BSD-Sun license. Considering BSD's license was unilaterally revoked a few years back, I'd feel a little better knowing some of these answers before committing major projects to this lack-of-Java-6 workaround. And I bet someone's going to be able to follow up in the comments with the details I'm fishing for.
Still, legal concerns shouldn't diminish the technical achievement of getting the port substantially working in the course of a few evenings and weekends. A lot of Mac-based Java developers may potentially be unblocked by this, and assuming most are doing server-side development, the absence of native AWT support and sound is not that big a deal. And for those issues, it's likely some Cocoa and Core Audio developers may be able to lend a hand. Anyone care to whip up some suitable
NSView implementations of
Also in Java Today ,
Neal Gafter has posted an update on his closures prototype for Java 7. "The Closures for Java prototype
now allows a closure to access mutated local variables from an
enclosing scope. You can download
href="http://www.javac.info/closures.ztar">the prototype here.
You can also download the
sources for the rewritten parts of Doug Lea's fork-join library,
ported to use function types. It is a good example of how APIs can
be affected by these language changes. Personally, I find the API
simplifications to be quite compelling." Neal is also working on smaller language changes, and describes the idea of "Extension Methods" in this blog as well.
The JavaFX Script Plugin for NetBeans IDE 6.0 is now open source. The source code is subject to the terms of the GNU General Public License Version 2 ("GPL") and the Common Development and Distribution License("CDDL") terms. The plugin includes features for the creation, modification, and execution of JavaFX Script applications. There are also future plans for additional features, such as debugging.
In today's Weblogs .
TerrenceÂ Barr goes all Romain Guy on the mobile GUI in
"Radical" SVG Makeover - Not your plain old Java ME app anymore
"What is really missing for developers is a step-by-step example on how to transform a plain old lcdui.*-based MIDP application into a flashy and engaging SVG/JSR-226-based app. So the idea of the "Radical SVG GUI Makeover" for Java ME was born."
JanÂ Haderka announces some nice new features in
SwingX 0.9.1 released .
"Apart from all the changes and bug fixes there are also new features delivered with this release -JXLoginPane now has support for CapsLock notification, JXHeader is more friendly and configurable, JXMultiSplitPane now paints dividers and many others. Make sure you check it out."
Finally, ArunÂ Gupta shares feedback in
Metro and jMaki Q&A from a Preso .
"I presented on Metro and jMaki in an invitation-only gathering in Seattle on Nov 15. The audience in both the sessions was pretty interactive. Even though the sessions were invitation-only, I'm posting some of the questions asked during the sessions along with their answers"
In today's Forums ,
Emmanuel Pietriga suspects a leak in
Garbage collecting a BufferedImage .
"I am having problems reclaiming memory consumed by a (supposedly GC'ed) BufferedImage. When I want to dispose of an image, I basically do: img.flush(); img = null; I was expecting this to free the memory from all resources associated with this BufferedImage. Unfortunately it does not seem to be the case. After some time I get a java.lang.OutOfMemoryError: Java heap space. Manual calls to System.gc() do not change anything to the current memory consumption."
has a roundabout solution to an authentication hassle in
Re: JDBC Realm login
is looking for cross-platform screen-printing functionality in
Printing on MAC OSX - JDIC 20061102
Current and upcoming Java
Registered users can submit event listings for the
href="http://www.java.net/events">java.net Events Page using our
href="http://today.java.net/cs/user/create/e">events submission form.
All submissions go through an editorial review before being posted to the
Archives and Subscriptions: This blog is delivered weekdays as
Today RSS feed . Also, once this page is no longer featured as the
front page of java.net it will be
archived along with other past issues in the
Java 6 for Mac, but not from Apple?