It’s official – Sun picks GPL for Open Sourcing Java

Sun has confirmed that it is to use the GPL Open Source license to open source Java SE. Although this is considered the most restrictive of the open source licenses (mainly because it forces derivitive works to also use the same license), this does allow Java to be more Linux friendly (which itself is mainly licensed under the GPL). Sun is using a clause in the license however that allows any applications developed using Java (since these are not derivitives of the Java product itself) to be licensed how the developer choses.

More details in this article on news.com.

Static code analysis tools for Java

As Java is a statically typed language (meaning that variables are strongly typed and do no change type at runtime, unlike dynamically typed languages like Perl, Python, Groovy etc), it is possible to build tools that can analyze your code and look for common problems.

There are a number of these tools already out there, including FindBugs and PMD. Greg Sporar gives a quick overview of each in his blog on java.net.

Is a GPL license the right move for Java?

crn.com has an article discussing the licensing model for open sourcing Java, and reports that the GPL license is likely to be chosen for Java SE and ME, and with CDDL to be used for EE.

Since the GPL license is arguably the most restrictive open source license and will without a doubt attract a lot of crtitisism for Sun, why is it likey that they will be chosing this license? The article points out that since derivitive works under the license also have to be licensed under the GPL, this prevents commercial forking from the code base, so will in fact allow Sun to retain some degree and control over where the code goes and what can be done with it.

Is this the right move for Java?