http://tech.ccidnet.com/art/3737/20050810/517063_1.html

开源的 JVM 目前已经有很多,对低层技术感兴趣的朋友可以看看:

1、Jikes RVM

http://www-124.ibm.com/developerworks/oss/jikesrvm/

IBM 支持的项目。

2、ORP

http://orp.sourceforge.net

Intel 支持的项目,现在已经移到了 sourceforge 上。

3、GCJ

http://gcc.gnu.org/java/

GCC 编译器系列中的新宠。GCJ 可以把 Java 程序编译成本地代码,所以严格地说它不算一个 JVM。

GCJ 中的 libgcj 相当于 Java Runtime 与 Java 核心类库之和。

4、Kaffe

http://www.kaffe.org

Linux 上最早出现的 JVM,与标准 Java 不兼容(它们提供了一些自己的核心类库)。

5、IKVM

http://weblog.ikvm.net

运行于开源的 .Net 平台??Mono 之上的 JVM。

其它还有 Jupiter、Kissme、SableVM、Jaos、JAmiga,可以在这里找到:

http://www.gnu.org/software/classpath/classpath.html

其中少了一个 Japhar:http://www.japhar.org,Japhar 已经好几年没有动过了。


这些 JVM 跑起来总少不了一个 Java 核心类库吧?它们通常用的都是目前实现最完整的 Java 核心类库??GNU Classpath。

http://www.gnu.org/software/classpath/

(GCJ 中的 libgcj 将来会与 Classpath 合并)


开源的 Java 编译器:

1、GCJ

就是上面的项目。

2、Jikes

http://oss.software.ibm.com/developerworks/opensource/jikes/

IBM 贡献,目前速度最快的 Java 编译器,使用 C++ 开发。

3、KJC

http://www.dms.at/kopi/general/kjc.html

来自于一个更大的 Java 开发包 KOPI(http://www.dms.at/kopi/) 中的 Java 编译器,Kaffe 中的 javac 使用的就是 KJC。

4、FLEX

http://www.flex-compiler.csail.mit.edu/

其它的还有各种 JVM 中自带的 Java 编译器。


我两年多前曾经在 Windows 上用 jview(M$ 的 JVM)+ Classpath 做实验,跑过一些简单的程序。那时候 Classpath 还很初步。现在 Classpath、GCJ 的可用性已经比较好了