Skip to main content

Here Comes A Regular

Posted by editor on February 15, 2008 at 7:58 AM PST

A big day for OpenJDK

Yesterday afternoon was an eventful one if you're on the OpenJDK mailing lists. All of a sudden, there was a flurry of activity, with one announcement after another. The most significant of which has to do with the OpenJDK community's first JDK 6 source drop.

I sent the URL for this to some friends on IRC and immediately got a question about JDK6uN, suggesting some pretty serious confusion about the various JDK projects. Let's see if I can help with that.

Since its launch, the OpenJDK project has been producing a GPL (with classpath exception) version of the evolving Java 7 standard. From the Free and Open Source Java FAQ:

We're open-sourcing these components from an early build of JDK 7. JDK 6 is the current shipping production release, and is stable. Hence we're releasing these components from the JDK 7 tree. At this stage, the only significant differences between the JDK 6 and 7 versions of these components are minor bug fixes and enhancements that have already been integrated into the JDK 7 tree. JDK 7 is the next feature release where all the action will be for innovation and new capabilities.

Now, of course, we don't really know what's going to be in Java 7, as there isn't even yet a JSR to specify its contents. So a while back, Joe Darcy proposal a JDK 6 project. In effect, this is a backport of these early Java 7 sources (which, unlike Sun's released JDK 6, are GPL+CPE), to the JDK 6 specification (viz., JSR-270).

To clarify, then: Sun's JDK 6 is release-quality, under the old licenses (BCL, SCSL, or JRL, as appropriate). JDK6uN is the more modular, "consumer JRE" update of that VM. And the OpenJDK 6 project is the GPL source release that isn't yet production quality.

OK, so we're all good with that, right? Good, because the Java Today section is all about OpenJDK today, starting with this announcement of the first source release from the OpenJDK JDK 6 project. Due to IP encumbrances, some classes are not available as source, and are instead provided as "binary plugs" for Windows, Solaris (32- and 64-bit) and Linux (i586 and AMD64). More details about the project are available in Joe Darcy's blog and his initial project proposal.

Meanwhile, a very early -- version 0.01, in fact -- release of the OpenJDK Developers' Guide has been posted as part of the OpenJDK project. "When the JDK was released under the GPLv2 license in May 2007, the need for a detailed document for contributors was anticipated. Translating rather sophisticated institutional knowledge into a format suitable for non-Sun employees is always a challenge. This document attempts to address the needs of developers who wish to participate in the future of the JDK." This initial release includes the "Repositories", "Change Planning and Guidelines: Fixing a Bug", and "Producing a Changeset" sections.

More source and fewer binary plugs will be coming in the next OpenJDK drop, according to Phil Race's message imaging and color classes binary plugs no longer needed (soon). "One of the most glaring holes to date in the openjdk sources are a couple of dozen 2D classes visible at the API level in the packages java.awt.color, java.awt.image, and java.awt.image.renderable. These have been held back from the sources (but included in the binary plugs) until we (Sun) established we could release these under GPL v2 +CP (ie same as most of the rest as OpenJDK). Just today we got the OK to do that, so at the next opportunity these classes will appear in the open jdk sources."

While we're talking Java 7, let's go ahead and bring up what's probably the most-discussed potential feature proposed for it. The latest Poll asks "Which Java 7 closure proposal do you support?" Cast your vote on the front page, then visit the results page for current tallies and discussion.

David Herron also discusses the OpenJDK news in today's Weblogs.
In The end of the beginning of OpenJDK6, he writes:
"the source drop for OpenJDK 6 is now available. See This is a very early release, there are bugs, and if you build from these sources they do not yet produce a compliant binary. The latter is being worked on."

Grizzlet reloaded: Bringing Ajax Push/Comet to the Masses?, Jean-Francois Arcand writes,
"the Grizzlet concept seems to attract enough attention those days to force me to update the current implementation. More important, I'm getting more and more requests to move the Grizzlet concept out of Grizzly and make it available for Jetty and Tomcat. The concept is so simple that even myself can write AJAX/Comet application easily, which is a sign."

Finally, Alexander Potochkin works through a
JTrayIcon update.
"The fact is that there is no way (or at least easy one) to correctly attach JPopupMenu to a TrayIcon. It means that you can't set an icon for a TrayIcon's menuItem or make it look according to the current Look and Feel and, from my point of view, it makes TrayIcon much less useful than it could be. It is our fault, sorry about that. Now let's see how we can solve this problem."

In today's Forums,
vvessan is concerned about the scene graph project's licensing choices, as explained in the message
Re: License.
"However if this project stays under GPL I'm affraid it will cause that it won't be widely used and will hurt the project itself as it will get abandoned over time. GPL thus far is causing more bad than good to both the SceneGraph and Java community as other project/languages will be used instead of SceneGraph/Java. I sincerely hope that the SceneGraph will change the licence, or anybody else (like Apache) starts working on an alternative with more friendly licence as soon as possible."

yzh0709 asks
Does Jxta really work well over Internet?
"I'm new in Jxta. I've just read the Guide. I know Jxta should work very well over Internet. However, I heard that it was hard to find out peers and pipes over Internet. Thus I want to ask about whether Jxta really works well over Internet? If it does, what should I do to make sure the peers can be found? Especially most peers are behind NAT? Is there any example that I can learn from to use Jxta properly?"

Finally, Pramod Gopinath announces
GlassFish v3 gem for JRuby on Rails v0.1.1 released at RubyForge.
"After having released v0.1.0 last week and having seen the positive response for this gem, I have decided to release a new version of the gem to address some of the common issues that were reported. Hence today I have pushed out v0.1.1 of the gem at RubyForge."

Current and upcoming Java

Registered users can submit event listings for the href=""> Events Page using our href="">events submission form.
All submissions go through an editorial review before being posted to the

Archives and Subscriptions: This blog is delivered weekdays as
the Java
Today RSS feed
. Also, once this page is no longer featured as the
front page of it will be
archived along with other past issues in the href=""> Archive.

A big day for OpenJDK


Its the title of a song from "The Replacements" if I am not mistaken.

I'm not sure what the title has to do with the actual story, but I'm still loving your work, thanks very much.