Re: Status of Free Java Environment?
* Java compiler (.java to .class)
Gcj can also compile .java to .class. It currently does not handle
inner classes, but that is being actively worked on. It is written in
C, so is reasonably fast. It generates reasonable good bytecode. And
of course being able to use the same compiler for .java to .class and
.java to native has its advantages.
* JVM (with or without JIT)
libgcj (the run-time library for gcj) now includes an interpreter
* Compiler (to native executable)
"GCC, the Gnu Compiler Collection comes with GCJ, the Gnu Compiler for Java"
was already mentioned.
* Debugger (jdb equiv)
Gdb can debug code produced by Gcj. Cygnus also wrote support for Gdb
to debug other VMs using JVMDI. This has not been released, because
the Gdb internals were changed at the same time, and no-one has had
time to re-integrate the changes. Sigh. We can probably get Cygnus
to release the old code, if someone wants to look into getting this
stuff working with the current Gdb internals. (A non-trivial job.)
Note there are at least three implementations of the standard Java
classes: Kaffe, classpath, and libgcj. This means some unfortunate
duplicate work. One problem is different licenses. That does not
preclude someone donating the same or similar code to all of them,
but it does preclude whole-sale merging.