Before I installed Sun Java, my console was suggesting I download things like Cacao or Kaffe. I realized these were open source alternatives to Sun's version. Ultimately, I got the Sun version which is free anyway.
What are the pros and cons of downloading something like Kaffe? I am not going to do anything too fancy. Can I use it to write networking applications like sockets or java swing applications? I am hoping Kaffe has many of the generally used Java features and maybe not some of the most recent changes.
A complete Java runtime is a fairly complex piece of software. There are a few in existence -- Sun's and IBM's in particular, but there are a few other commercial offerings which are in this category too -- which are well-implemented enough to use in production. Kaffe, GCJ, and the other grassroots open-source JVMs are all quite impressive accomplishments, but in my experience none of them are robust enough to use for serious work.