日期:2014-05-16  浏览次数:20467 次

IBM和Oracle改变了游戏:结成OpenJDK同盟

导读:Oracle-IBM? OpenJDK同盟对整个Java?行业产生涟漪效应,这对于Java生态系统的健康发展影响如何,评论人士对此褒贬不一。纵观各种观点评述,前 JavaWorld编辑 Athen O'Shea 评论直达问题本质:这对于Project Harmony、JCP 、开源的未来以及Java平台上的基于开放标准的开发究竟会产生什么影响。

IBM和Oracle于10月11日发表联合公告,他们将共同努力推进OpenJDK项目,这让很多人感到惊讶。很多评论员都同意这样的观点,即这项举措通过两家大公司的联合,将重新定义 Java 生态系统,并且对 Java 技术的未来来说,是个好消息。

Javalobby投票中60%以上的受访者(最新统计有600人)称,他们认为IBM协助OpenJDK项目的决定有益于Java技术。通过决定在OpenJDK上合作开发,这两家公司成功地停止了关于IBM 主导的Java分支的投机行为,这对数十亿美元的 Java 产业来说也具有同样的意义。除此以外,还有一些私下的评论,Eclipse Foundation的Mike Milinkovich 说,“我们又可以回到专心开发创新中了。”

Oracle-IBM 公告对于这个快速发展的行业来说,也会成为一个艰难的选择。从有着长期技术投资的跨国企业到小型公司和个人,都要决定是否继续在Java平台开发软件。本文将一一展示参与其中的,或受Oracle和IBM决策影响的关键因素和参与者。在每一节的最后,还有介绍此同盟方方面面情况的Web资源链接。

OpenJDK作为Oracle-IBM项目

OpenJDK 是Java平台的开源参考实现;它包含Java SE、Java 语言、JDK 和 JRE。 OpenJDK规范要求由Java Community Process投票决定。即将到来的投票将决定新提议的OpenJDK 路线图是否能被JCP执行委员会接受。

Java Platform Group的总架构师Mark Reinhold表示,IBM的OpenJDK工程师可能“主要负责类库开发,并与我们其中一部分同事合作,构建一个通用源平台,以便能使用顶层多 Java虚拟机。”两家公司很有可能会在各自的JVM上独立工作,会看到“很多不同企业的功能差异”,他说。

有赢,有输

选择IBM成为OpenJDK合作伙伴明显是Oracle的战略决策。Oracle的软件业务副总裁Adam Messinger说,这一举措反映出两家公司都想要加速解决快速发展的多核硬件带来的挑战。“这次合作反映了我们两家都面对的战略现实,”他说。

OpenJDK 同盟让 Oracle 不再隔绝,RedMonk的Stephen O'Grady说,成功地使它在Java生态系统中的地位得以确认并提升:

如果Oracle想要挑选一个Java业务方面的供应商合作,很容易选择IBM。除了企业间的盲目信任——比如,“购买 IBM 不会被抛弃”——蓝色巨人在开发人员中有着让人羡慕的声誉。而现在IBM公开与Oracle站在一边,后者维持此生态系统的任务变得简单得多。

这对IBM来说,也是一项好的举措,即使显然会牺牲掉Harmony。将工程资源从Project Harmony转换到OpenJDK,IBM加强了对Java技术的影响,尽管会明显 处于 Oracle 掌控之下。两家公司表示,将共同努力以确保作为Java 平台发展的主要标准组织的JCP的地位被强化并提高。

还有没解决的问题,Project Harmony如何处理,Oracle-IBM同盟对Google 意味着什么,OpenJDK同盟会对Java技术行业的其他厂商意味着什么,JCP将如何变革,变革到什么程度。

OpenJDK和Oracle-IBM决策

OpenJDK 委员会成员大多数是Oracle(以前是 Sun)和IBM员工,其余是Google和Red Hat的开发人员。

IBM开放系统和Linux业务副总裁Bob Sutor述 IBM 这项决策的理由。他解释既有有利因素,IBM会加强开发利用,以确保Java和JCP的未来发展,也有不利因素,这项决策会妨碍 roject Harmony。

Stephen O'Grady 从分析员的视角解读 Oracle-IBM 的决策对整个 Java 生态系统的涟漪效应, 包括猜测选择 IBM 作为 OpenJDK 合作伙伴为什么对Oracle来说是好的举措。

Mark Reinhold解释新的 OpenJDK 路线图及其分裂的 JSR 背后的思考。

Project Harmony 怎么办?

IBM曾经是Project Harmony,这一Apache Software Foundation所开发和许可的开源Java运行时的长期支持者。对于某些Java社区,Harmony曾被看作是官方Java平台实现的替代选择,这种需求现在仍然存在。相对于独立的Java实现和许可,Harmony还会被看作是对Oracle的地位的检验。

IBM的开源和Linux? 业务副总裁Bob Sutor在总结IBM的决定,让工程师从Project Harmony转向OpenJDK时,称之为务实:

很明显,先是Sun,然后是Oracle,从来没有对Java、Java SE TCK做过认真的测试和验证,以便能在Apache中使用。我们不同意这项决策,但它不是我们做出的。所以与其继续将Harmony开发成非官方的、未验证的Java产品,还不如调转方向,努力开发OpenJDK。

这项举措让Harmony的未来很不确定,此项目是否及如何进展还 握在开发人员手中。IBM的决策“对 Harmony 来说不是好事”,Harmony创造者和Apache董事会成员Geir Magnusson说。“但从长远来看:对于Apache Foundation,由社区决定做什么。我们按照社区所希望的做。”

一开始的反应是“玩完了(不止是 Harmony)”,后来变为建议Project Harmony 的一部分可以转到OpenJDK中。有人推测此平台也可能在另一赞助商的支持下继续发展;这就是,Google。

Project Harmony过去和未来

Ryan Paul,在 Ars Technica 中,给出准确的 Harmony 许可历史的概述;Sun 的,现在是 Oracle 的影响,使用领域的限制;以及 IBM 直到现在在领导平台方面的地位。

Stephen Colebourne,作为 ASF 成员,对 Sun/Oracle 两方关于 IBM 的决定的许可争论和结果 观点总结。

据 Harmony 创造者 Geir Magnusson 所说,Harmony 的未来仍 掌握在开发人员手中。

很多人,包括 DZone 的 James Sugrue,都想知道,在开发出 Android 中使用的 Harmony 库之后,Google 对 Harmony 的未来会起什么作用 。

Google、Android和新冷战理论

虽然 Google 不是惟一一个受 Oracle-IBM 决策影响的 Java 技术厂商,但也许是失去最多的厂商,也可能是得到最多的,如下文所述。Oracle 在 8 月对 Google 展开的诉讼(声称对 Android 相关的多项专利权和版权侵权)是对开源精神的打击,而开源精神是 Java 生态系统健康发展的土壤。这项公告发表后,Java 分支的呼声 日益高涨,有人担心原先处在 Java 技术这一方的开发人员将无路可退。

Project Harmony 没有一个强大的赞助厂商 对 Google 来说可能是坏事(Android 架构在 Harmony 子集之上);但也许会是好事,如果 Google 决定 自己开发 Project Harmony。

无论 Google 做出什么决定,将不会仅仅影响 Android,而且会影响厂商在自己的实现中如何看待和利用 Java 技术。而且,正如有些人指出的,我们也许会进入一个 新的冷战时代 — 与作为局外人的 Google,而不是 Oracle。

Google 下一步是什么

Charles Nutter 在其 Oracle-Google 诉讼案总结中提到了所有要点以及 对整个 Java 生态系统的涟漪效应。

Greg Luck 在 10 月 4 日博客文章 “分化 Java 的时间到了么” 中提出 Java 分化的猜想。

Googling Google 的博客作者 Christopher Dawson 在谈论 Google 选择对抗还