Channels ▼

JVM Languages

Sun Set To Move On GPL License For Open-Source Java

Sun Microsystems has talked a lot about putting Java into an open-source license. Now it's ready to move.

The company is very close to announcing that it will put the mobile (ME) and standard (SE) editions of the Java platform into the GNU General Public License (GPL), with the Java Enterprise Edition and GlassFish reference implementation (currently open-sourced under Sun's Common Development and Distribution License, or CDDL) to follow, several industry sources said.

The OpenSolaris operating system will continue to be offered under the CDDL, according to several sources. The news could come as early as next week, they said.

The GPL is an intriguing and controversial choice. By requiring derivative works to also be released as open source, the GPL discourages commercial forking -- a consequence that fits well with Sun's stated goal of preserving Java's cross-platform compatibility. However, a GPL license would require those making changes to the core Java platform to freely release their code.

Santa Clara, Calif.-based Sun declined to comment on its open-source Java plans and licensing choice.

Sun CEO Jonathan Schwartz has publicly toyed with the idea of GPL'ing Java. "We're now making serious progress on open-sourcing Java (and despite the cynics, using a GPL license is very much *on* the table)," Schwartz wrote in his blog in May.

Earlier, he mused on the merits of adding a GPL license to the mix for Solaris. "We're looking at how to reach developers and customers who prefer the GPL," he wrote.

"Wow, that's surprising," said one developer when asked about the potential impact of a move by Sun to put Java under the GPL.

Embracing the GPL would win Sun credibility in the open-source community, which has been irked before by Sun moves such as contributing to licensing complexity by inventing the CDDL.

"I think Sun realizes that their other pseudo-open source efforts don't work,and that they can still retain control over code that's GPL," the developer said.

Offering Java only under the GPL would have a cataclysmic effect on the software industry, forcing Java platform developers to freely release their contributions if they continue developing around the platform's GPL code. IBM, for example, licenses Java from Sun and has its own version of the Java Virtual Machine.

A more likely scenario is that Sun would offer dual licensing for Java, a commercial/community hybrid approach used by vendors such as MySQL and Sleepycat Software (now part of Oracle).

MySQL offers a GPL license for those willing to freely open-source their contributions and a commercial OEM license for companies that don't want their code distributed. According to a Sun executive quoted in the publication Australian IT this week, dual-licensing is the plan. Sun will have open-source and commercial licenses, differentiated by their IP indemnifications, Sun software product business manager Laurie Wong told the publication.

An online poll of Sun's community rated the GPL as the second most-preferred licensing option, behind the Apache License. Thirty-one percent of the respondents opted for Apache, compared with 21 percent for the GPL. However, adding in the votes for the LGPL, a slightly more permissive offshoot, the GPL carried a commanding 37 percent of the votes.

The GPL is a topic of much conversation of late, with Richard Stallman of the Free Software Foundation and others pushing a new GPL 3 version that other open-source stalwarts -- including core star developer Linus Torvalds -- say is problematic.

UPDATE: For more on Sun's GPL plans see Barb Darrow's Unblog from Friday.

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.