After years of requests and debates, Sun Microsystems is going ahead and releasing Java source code under a GPL license.
It plans to put the code for the programming software under the version 2 of the General Public License (GPLv2), which governs Linux and many other open-source products.
The Sun-hosted Java.net Web site will provide access to Java Platform Micro Edition (Java ME) software for mobile phones and Java Platform Standard Edition (Java SE) software for desktop applications.
Sun already has open-sourced its server-side Java Platform Enterprise Edition software in a project called GlassFish. But it is now making that same software available under the GPLv2, rather than the Sun-conceived Community Development and Distribution License (CDDL).
The nature of the GPL is that additions to software available under the GPL must also use the license. However, Sun is employing the so-called “classpath exception,” a license addition that allows the company to place limits on the software that the GPL covers.
This should help protect the work of programmers and companies that build their applications on top of Java.
This move by Sun is an attempt to build a stronger community, gain more developer followers and to avoid the problems of packaging Java with Linux distributions because of concerns over license alignment.
I’ve personally been one of the supporters of Java becoming open source for a long time, and I think the best way to keep it growing and always innovative is by opening it to the huge community of Java developers. So I think it’s great that they’ve done this at last.
[Source: CNet News]
What Sun did not say yet (I work for one of the licensees and I was in a sun presentation about this move) is that they will be some poison pill, like forcing “compatible” changes to roll back to the main sun branch with giving up of any IP involved. There will be a notion of “compatible” certified by Sun and other small “thingies” to limit the number of incopmatible releases of JDK. (I know from insiders that this is upsetting Apache and Eclipse.org)
Also rigth now, they’ll start by javac, javahelp and the binaries and only for J2SE 6.0. Buildable JDk won’t be available before mid 2007.
Now the intersting problem would be for tools maker like Eclipse, how are they going to support all these new versions/drops since as we all know in the open source community, there will be as many versions as open source developers ๐
Sun has been highly regarded in the IT engineering community for some very fine and high quality work, stuff that matters that is. Unfortunately, they have suffered some blows recently mainly because they took delay in adapting to the new Open Source model.
The requirement to feed contributions back into the Java code is the very essence of GPL and the part that made Linux a stunning success and I’m expecting yet more success to Java thanks to the GPL.
In all Open Source projects there needs to be a central maintainer who governs what goes in and what does not. That’s why there are not as many Linux kernel versions as there are kernel developers. Actually, there is one Linux kernel version maintained by Linus, but there are loads of packaged builds and distributions. When we refer to the Apache code, we all know it’s the version maintained by the Apache Foundation, the same goes for the Linux kernel, the gcc compilers, glibc and so on.
Red Hat thinks this is a “great day for Open Source”. Thanks Sun!
-Imed