GNU Classpath与OpenJDK二者的结合

第一个GNU Classpath与Sun Java的结合体已经出现。二者的结合体将GNU Classpath与Sun公司最近遵循GPL协议发布的Java代码相结合,来提升现有项目的性能,或是进一步实现一个完全免费的JDK。第一个 IKVM项目已经发布了Snapshot版本,这就允许OpenJDK类库中的一部分能在Mono和.NET中运行。之后CACAO项目的开发团队发布了 一个新的版本,允许Sun的phoneME可以被用作核心类库。最终,红帽公司启动了IcedTea项目,使得OpenJDK仅使用自由软件就可以编译, 并且为OpenJDK中剩余的二进制模块,提供来自GNU Classpath的存根(stubs)和替代(replacement)。

IKVM.NET为Mono和微软.NET Framework提供了Java代码编译和运行的实现。以前的项目使用GNU Classpath来执行Java类函数,而目前则开始把OpenJDK中的类库整合到项目中,这将是个漫长的过程。项目的第一个Snapshot快照已在五月31日发布,随后另一个版本在六月13日发布。

CACAO是使用Just-In-Time即时编译技术的Java虚拟机,运行平台支持i386、x86_64、Alpha、PowerPC、ARM、MIPS以及MIPS32等多种硬件架构。CACAO使用

GNU Classpath作为其默认的Java内核类库。CACAO的0.98版本口号是“释放所有的JIT性能!”,这个版本加入了对使用Sun的phoneME和CLDC 1.1类作为Java核心类库的支持。

Sun公司已经在GPL协议之下开放了几乎所有JDK的代码,要注意这里的关键词“几乎”。仍然有众多的“ 二进制模块”,代表部分阻碍的部件。红帽已经 启动了新的项目 IcedTea,目标是:(1)使OpenJDK仅用免费软件就可进行编译,以及(2)为二进制插件提供免费的存根(stubs)和替代(replacement)。替代代码已经从GNU Classpath中提取出来,并且越多越好,但是IcedTea项目同时也为依赖创建了存根,这并不符合GNU Classpath。IcedTea项目“并不打算成为一个永久性项目 —— 只是一个暂时的权宜之计”,直到这些功能实现被直接加入到OpenJDK项目中为止。

这无疑是令人鼓舞的:代码共享在向两个方向发展。自由软件项目不仅是要与其他新的自由软件代码结合,也可以帮助OpenJDK的发展。很明显,这仅仅是个开始。

查看英文原文:Hybrids Combine GNU Classpath and OpenJDK

你可能感兴趣的:(GNU Classpath与OpenJDK二者的结合)