Sun Completes Java Core Tech Open-Sourcing
MsManhattan writes "A year after announcing its plans, Sun Microsystems has made almost all of the core technology in Java available as open-source software under the GNU general public license version 2 (GPLv2). However, some of the code remains 'encumbered'; that is, Sun doesn't have sufficient rights to release it under GPLv2, and the company is requesting the open-source community's help in resolving these issues. Rich Sands, community marketing manager for OpenJDK community at Sun, would not say what percentage of Java's 6.5 million lines of code are encumbered, but explained that it is largely Java 2D graphics technology, such as font and graphics rasterizing."
gue5ts. Some people Posts. Due to thE you are a screaming
Except usage isn't the problem with GPLv2 licensed J2SE. All classes in Java derive from java.lang.Object, which is licensed under the GPLv2 in the open source J2SE.
According to the FSF, subclassing is identical to creating a derivative work, so using java.lang.Object that's under the GPLv2 requires that the code be licensed under the GPLv2.
Some people have managed to miss the fact that this deriving occurs at runtime and not at compile time, so the fact that non-GPLv2 code was originally compiled against a non-GPLed java.lang.Object is irrelevant as the user will still end up creating a derived work at runtime.
By my reading of the Classpath exception, it only covers usage (referring to objects and calling methods on those objects) and does not subclassing. It's not supposed to, since subclassing is considered creating a derivative work.
Therefore, the only valid license for any code run under a JVM where java.lang.Object is under the GPLv2 is the GPLv2, as all Java classes will automatically derive from the GPLv2 java.lang.Object.