Sun, Java & OSS

I, actually “we” my wife and me, just came back from my holiday trip to Chaung Tha Beach. The beach was quiet last two days, and went live just before we left. The wind was still and there’s no virtually no tidal waves at all, and there was no point for us to getting into the sea enjoying the waves. We did enjoy the sands, beach, and sea foods there.

When I got back to Yangon, turned on the computer, and there was a great news waiting. The father of Java technology, James Gosling, has spoken Sun’s open sourcing of J2SE and J2ME. There’s an interview with him. Java will be released under GPLv2. Yes, according to GPL, when we write java programs (I actually meant when we are using Sun’s components and libraries), our code should be released in GPL because we’re using GPL’ed libraries (in this case Sun’s JDK). But luckily, Sun’s releasing JDK with Classpath exception. GNU Classpath is the free implementation of standard class libraries for Java.

Excerpt:

Q:
What is the Classpath exception?
A:
The Classpath exception was developed by the Free Software Foundation’s GNU/Classpath Project (see http://www.gnu.org/software/classpath/license.html). It allows you to link an application available under any license to a library that is part of software licensed under GPL v2, without that application being subject to the GPL’s requirement to be itself offered to the public under the GPL.

The whole FAQs about the process and terms can be found here. And then there are three new java open-source communities. Of these three, OpenJDK and GlassFish has catched my eye.

Oh! Wait! Netbeans 5.5 is out there, and there’s even an article for Netbeans and OpenJDK.

Currently, I’m busy learning how to bake the cake and how to ignite the code. These two are very similar and still have support for PHP4, unlike Symfony. I guess my future projects will be based on them.

Java Virtual Machine Options

Until I’ve tried to run java programs in low memory PCs, I always thought there’s always enough memory for Java Virtual Machines. This time, I’m with Java HotSpot Server VM, and it even fails to run simple

java -version

After consulting with Sun’s Java Hotspot VM Options Document and this, I added this option when launching JVM.

java -Xmx64m -version

That sets the maximum heap size for Java, and it works!