Apache Harmony
此条目需要更新。 (2013年6月) |
Apache Harmony是Apache软件基金会主导的开放原始码项目,是自由Java实现计划(Free Java implementations)的一部分。基于Java SE 5与6,目标是以开放原始码方式,实现出Java SDK。该项目已于2011年10月宣布停止开发。
开发者 | Apache Software Foundation |
---|---|
当前版本 | 5.0M15 6.0M3(2010年9月15日 ) |
原始码库 | |
编程语言 | C++ and Java |
操作系统 | Windows and Linux |
类型 | Java Virtual Machine and Java 类库 |
许可协议 | Apache许可证2.0 |
网站 | http://harmony.apache.org |
这个项目的目标是营造一个大型的、健康的社区,这个社区由那些对运行时平台感兴趣的人组成。他们的任务是完成:
该项目期望支持尽可能多的不同平台。一个特定的平台是否被支持,主要取决于参与者能在这个平台上定期运行测试、报告编译安装的情况,以及为该平台除虫,等等。
历史
Apache Harmony项目建立于2005年5月。到2006年10月25日,Apache董事会投票决定Apache Harmony成为顶级项目。10月29日,Apache孵化器管理委员会(Incubator PMC)投票决定Harmony完成孵化,认为它符合孵化器对社区管理和IP监管的要求。
开发者
Apache Harmony拥有32名贡献者,其中28位处于活跃期。此外,还拥有大量的其他兴趣爱好者和开发人员。
最近发展
Apache Harmony一直在稳步前进:
- Apache Harmony已经发布了5个milestone build
- JRE可以运行一些流行的应用如Apache Tomcat, Eclipse, Maven, Derby, Ant
- 完成了99%的Java 5 API
- 超过125万行的代码
- Harmony类库于2007年底被Google Android采用为其类库
- 2007年,IBM宣布在其JDK6.0中使用了部分Harmony代码
Android
Dalvik虚拟机, Google Android平台所使用的虚拟机,使用了Harmony部分的子集,作为它核心的类别函数库。
TCK的纷争
如果需要成为一个带有Java logo标志的,可以声称自己兼容Sun公司实现的JDK,需要通过JCP(Java Community Process)对其拥有的TCK(Technology Compatibility Kit)的测试。Apache Harmony项目一直在努力争取获得JCP的授权。
但是,由于Sun公司的态度,JCP并没有给Harmony授予TCK许可,而且SUN发布OpenJDK之后,还规定只有派生自OpenJDK的采用GPL协议的开源实现才能运行OpenJDK的TCK[2],
但Apache的Harmony是Apache协议的,与OpenJDK的GPLv2协议不兼容,Apache董事会和Harmony项目工作人员坚决反对这种带有条件的授权,认为这种是在开源社区里不可接受的。因此,两者谈判破裂。直到现在,Harmony一直没有获得TCK的授权。有批评称,Sun无视它签署的JCP法律协定,这摧毁了全部的信任。[3]
但该项目参与者依然认为,即使没有TCK,即无法“声称”自己兼容Sun的实现,他们依然可以做出一个好的产品并为业界所接受。
未来展望
Apache Harmony计划每2个月做一个milestone的build,并计划于今年正式发布一个5.0(即期望与Sun jdk 5.0兼容的)的发布版。
参考文献
- ^ The end of (Apache) Harmony. The H. 4 November 2011 [2013-06-23]. (原始内容存档于2013-07-05).
- ^ OPENJDK COMMUNITY TCK LICENSE AGREEMENT V 1.1 (PDF). [2012-06-02]. (原始内容存档 (PDF)于2012-08-26).
- ^ 争论:JCP在Java的未来中将扮演什么角色?. [2008-04-14]. (原始内容存档于2008-02-20).