Oracle已对Java语言失去兴趣?Java社区能否扭转乾坤?
小职 2017-12-20 来源 :网络 阅读 537 评论 0

摘要:去年 Oracle 对 Java 传教士进行裁员,更早前宣布将暂时停止继续为 GlassFish Server 发布大型版本更新并对相关支持进行限制。坊间一时间流言四起:Oracle将要放弃Java语言?Java社区的明天会怎样?借Java EE守护者联盟之力拯救Java EE!

   去年 Oracle 对 Java 传教士进行裁员,更早前宣布将暂时停止继续为 GlassFish Server 发布大型版本更新并对相关支持进行限制。坊间一时间流言四起:Oracle将要放弃Java语言?Java社区的明天会怎样?借Java EE守护者联盟之力拯救Java EE!

  随着去年 Oracle 对 Java 传教士进行裁员,以及更早前宣布将暂时停止继续为 GlassFish Server 发布大型版本更新并对相关支持进行限制,一群 Java 标准的支持者开始以“Java EE 守护者”的身份自居,并通过一个章程宣告他们将努力拯救 Java EE。

  Java EE 守护者是名副其实的 Java 权威人士,其成员包括“Java 之父”James Gosling、前任技术传教士 Reza Rahman,以及其他很多知名的 Java 技术人员。

  这个群体的创始人,Java EE/GlassFish 前任传教士 Reza Rahman 称:

目前我们在 Google Group 聚集了将近 400 名成员,我们的 Twitter 账号也有近 2000 名关注者。

  虽然受雇于 Oracle,这些“步兵”依然在努力推动 Java 技术继续发展。然而他们提供的统计数据显示出 Java EE 开发热潮正面临严重的衰退。从他们网站上提供的图表中可以很清楚地看到,问题的解决数量和版本的提交数量均有双双下滑的趋势。

 Oracle已对Java语言失去兴趣?Java社区能否扭转乾坤?

 Oracle已对Java语言失去兴趣?Java社区能否扭转乾坤?

  按照 Oracle 的辩解,该公司似乎已经将未来发展方向全面转向云计算。

  虽然 Java EE 守护者也认同云计算的重要性,但同时他们也表示:

尽管如此,依然有越来越多的证据表明 Oracle 正在非常明显地忽视 Java EE,逐渐削弱娴熟的 Java EE 开发者所建立的完善生态系统。除非情况很快出现转机,否则无论按照最初的承诺是否能顺利发布,Java EE 8 的交付很可能变得遥遥无期。

Oracle 为何采取这种忽视的态度,这种态度又到底会持续多久,这些事情还很难说。就算面对最“亲密”的合作伙伴,Oracle 也没有透露自己的动机,只是留下整个社区自生自灭。有一种令人非常不安的可能性认为,Oracle 这样做是为了逐渐脱离基于开放式标准的协作式开发方法,转为追求一种高度专有的单方向方法。

  Java EE 守护者的章程所追求的是一种更为“理性的战略”,希望通过为整个业界提供支持以“解决这个棘手的问题”:

按照承诺,我们依然需要对 Oracle 这种体量、业务范围,以及资源规模的公司施加必要的影响力。说服 Oracle 充分考虑外部用户(甚至该公司客户)的合法权益,以往的经历证明这种方法充满着挑战。此次继续这样做依然有很大可能无法成功,但我们始终要保持足够的理性和乐观。Java EE 社区需要你的帮助。我们需要你的意见支持,甚至可能的情况下需要你自愿付出一定的时间,帮助我们这次取得成功。你可以通过各种方式为我们提供帮助。

  从 Oracle 的观点来看,很可能觉得已经不值得继续为 Java EE 或其他 Java 技术提供支持。JavaFX 依然没有按照预期获得足够的关注,NetBeans IDE 依然只占有 10% 的市场份额。InfoQ 向 Rahman 问到对于无法实现“逃逸速度”的技术继续进行巨大的投入所能获得的价值:

我能告诉你的是,Netbeans 是一种很优美的 IDE。只要能妥善运用,NetBeans 就能获得成功。

最开始 JavaFX 并不是一种多么优雅的 API,并且当时看来后续改进和完善的余地并不大。但这个技术还没有糟糕到要被我们抛弃的地步。汽车仪表盘可能运行在 JavaFX 之上,浏览器也可能如此。Java 需要一种前端技术,JavaFX 与 TLC 的配合填补了这项空白。

移动领域也是如此,虽然也有问题,但依然有必要继续完善和改进,市面上也有不少公司愿意继续完善这项技术,因为这里面依然存在着问题空间(Problem space)。

  Java EE 停步不前:Java 社区能否扭转乾坤?

  最近大家围绕 Oracle 对 Java EE 的承诺有很多顾虑。Pivotal 公司 Spring Data 项目主管兼 JPA 2.1 专家组成员 Oliver Gierke 最近向 Jaxenter 提到 Oracle 明显已经对 Java EE 8 失去兴趣,此外还介绍了这些情况可能对 Java 社区产生的影响。

  Java EE 7 发布几个月后,Oracle 于 2013 年 11 月发布博客文章公布了有关 Java EE 8 的路线图:

在发布 Java EE 7 和 GlassFish Server Open Source Edition 4 之后,我们开始规划 Java EE 8 路线图,并通过 JavaOne Strategy 主题演讲进行了介绍。总结来说,我们的兴趣主要集中在改进对 HTML5 的支持、云计算,以及调查对 NoSQL 的支持等方面。对于大家想在 Java EE 8 中看到的改进,社区和客户为我们提供了一些很棒的反馈。

简单来说,Oracle 对 Java EE 的未来做出了承诺。Java EE 7 已正式发布,有关 Java EE 8 的规划工作也已开始。

  在那之后,Oracle 在博客文章中所表现出的热情似乎彻底停摆了。Oracle 在 2015 年 6 月发布的博客文章向 Java 社区通告了有关 Java EE 8 路线图的最新近况:

我们为自己设立的目标是在 JavaOne San Francisco 2016 开始前完成相关工作。虽然我们都喜欢在 JavaOne 做出(并听到)一些大事情,但在启动专家组过程中遇到的各种延迟以及我们的规范管理者在时间方面遇到的其他要求导致发布日期需要略微延后。我们依然会在 Java EE 平台的开发过程中遵循有关透明度的承诺。因此公开宣布要将完成这一工作的目标时间正式推后至 2017 年上半年。

  Java EE 7 发布两年后,Oracle 告诉 Java 社区他们还要再等等。在被问到有关 Java EE 8 的具体情况时,Gierke 说:

从全球视角来看,Java EE 8 基本上还在继续延续着 Java EE 7 那老生常谈的故事:继续执着于其他参与者已经逐渐不感兴趣的领域。在我看来,这是因为所有主要对手都已经开始将目光转向自家的云计算产品(Oracle 有 Oracle Cloud,Red Hat 有 OpenShift,IBM 有 Bluemix,当然 Pivotal 也有 Cloud Foundry)。

  JSR 372 和 JSR 378 专家组成员 Josh Juneau 于 2016 年 4 月发布的博客文章中谈到了自己的看法。经过调查,Juneau 发现由非 Oracle 规范管理者所控制的 JSR 比 Oracle 的规范管理者所控制的 JSR 更活跃。JSR 372 的提交数量也有显著下降(见下图)。Juneau 认为 2015 年 10 月之后的大部分工作都是由 Java 社区,主要是 Arjan Tijms 完成的,此人是 Bauke Scholtz 的共同创始人兼开发主管,同时也是 ZEEF 的共同创始人兼 Web 应用程序专家。

 Oracle已对Java语言失去兴趣?Java社区能否扭转乾坤?

  InfoWorld 特约编辑 Paul Krill 最近撰写的一篇文章中提到,James Gosling 发现 Oracle 的行事方式让人“非常不安”:

Oracle 恐怕不会继续为 EE 提供太多支持,而是转由社区合作提供...将其“专有化”,通过“廉价汽车旅馆”的模式推行不规范的标准,“客户只需要办理入住手续,从不需要退房”。

  Spring 5 和 Java EE

  Krill 于 JavaOne 2010 期间发布的一篇关于 Java EE 座谈会的文章中介绍了有关 Spring 和 Java EE 的争论:

“我绝不会将 Spring 与 Java EE 6 混为一谈,因为重叠的地方太多了,”身为顾问、作者,以及演讲者的 Adam Bien 这样说。另外他还提到同时使用 Spring 和 Java EE 的注解会导致复杂的问题。

他说:“对于大部分项目,我的个人意见是将它们区分对待,使用 Spring 或 Java EE 6 都行。”然而开发者也可以在 EE 6 的基础上使用 Spring 工具,Bien 这样说到。

但是 Caucho Technology 的首席工程师 Reza Rahman 更担心这两种技术之间的竞争。“Java EE 需要 Spring,正如 Spring 也需要 Java EE,”Rahman 说。

  大概六年后,原 Oracle Java EE 布道师,现任 CapTech Ventures 顾问的 Gierke 给出了与 Rahman 类似的看法:

据称 Spring 和 Java EE 之间的关系以竞争为最主要特点。然而如果仔细研究很快你就会发现,这两者之间曾经(并且目前依然)存在协同增效的作用,它们之间的关系不是非黑即白的,中间有很多灰色地带。

一方面,某些情况下 Spring 是以 Java EE 规范为基础构建而来的,因此如果没有 Servlet API,很难想象 Spring MVC 能发展成为目前这种形式。另一方面,框架始终都为最重要的规范提供了支持。

  另外要注意,虽然 Spring 依赖 Servlet API,但最初发布的 Spring 5 并不包含新的 Servlet 4.0 API。对此 Gierke 解释说:

对我们来说,Java EE 8 中最重要的部分在于 Servlet 4.0 API 及其对 HTTP 2.0 的支持。某种程度上这是可以预见的,但在我们最终正式发布 Spring 5 之前一切都尚无定论,我们目前正在与最重要的 Servlet 容器实现者(Tomcat、Jetty、Undertow)密切合作,以确保能在第一时间使用他们提供的原生 API 实现对 HTTP 2.0 的支持。

  Java 社区能扭转乾坤吗?

  Oracle 于 2015 年 6 月发布的博客文章鼓励 Java 社区提供帮助:

鉴于目前的这些变化,你将有更多时间和机会参与其中。

我们会继续鼓励开发者追踪 JSR 并通过各种 JSR 邮件列表和维基,下载并尝试 Java EE 8 参考实现的早期版本等方式提供反馈。我们已经看到很多人不仅对 Java EE 8 的功能感兴趣,而且已经参与了进来。

  然而 Krill 于 2015 年 9 月发布的文章称,InfoWorld 收到了来自 Oracle 前任高级雇员的邮件,邮件部分内容摘录如下:

Oracle 根本没兴趣为竞争对手做嫁衣,也不想共享自己的创新成果。

该公司正在逐渐抛弃 Java EE(Enterprise Edition),但并不希望别人继续完善 Java 或 Java EE,同时还在逐渐冷落 JCP(Java Community Process)。“他们抱有一种赢家通吃的心态,对合作根本没兴趣。”

这封邮件建议 JCP 成员向 Oracle 客户发送公开信,警告他们 Java 目前遭受的待遇。Oracle 绝对不会与任何“Java 基金会”进行合作,也不准备公开自己的知识产权。

  在最近的一篇文章中,Juneau 解释了 Oracle 有必要推进 Jave EE 继续发展而不应放弃的重要原因:

很明显,为确保安全性并保证能继续使用目前的 API,这些技术需要继续发展和完善。如果有人只是简单地想要 Java EE 停步不前,这意味着所有部分或全部运用 Java EE 的应用程序和服务(可能是我们所熟知的互联网上的很多东西)都将受到影响,无法继续发展以符合当今技术和安全方面的要求。

  Gierke 很高兴看到社区围绕 Java EE 8 做出的诸多举措,然而他也警告说:

我认为有一方面还没有引起大家足够重视,这个问题其实还挺危险:这个问题与我们到底能围绕 Java EE 聚集多少社区成员完全无关,但是由于许可方面的原因,对于 Oracle 所控制的 JSR 我们几乎束手无策。

除非愿意对 Oracle 采取一些法律行动,否则这个问题完全无解。我不确定是否有人愿意这样做,以前有人对 Google 这样做的结果大家都知道的。因此我觉得在不可行的情况下建议大家采取措施,这一点显得有些奇怪。

  Java EE 守护者

  在年初从 Oracle 离职后,Rahman 成立了 Java EE 守护者联盟,意在推动 Java EE 继续发展,尤其是:

宣传 Java EE 8。

为 Java EE 8 JSR 提供支持。

游说 Oracle 履行有关 Java EE 8 的承诺。

设法将停滞的 Oracle JSR 转手给其他供应商。

  Java EE 守护者联盟提供的证据证明 Oracle 在 Java EE 8 的发展方面全无进展,并鼓励 Java 社区签署请愿书,该请愿书将递交给 Larry Ellison。InfoQ 之前发布的文章也针对这一话题展开了漫长的讨论。

  作为对 Oracle 失去有关 Java EE 8 兴趣所做的总结,Gierke 表达了自己的想法:

如果这事的影响力不是那么深远或严重,大家可能会觉得目前的情况有些讽刺:Spring 堆栈以前被视作专有的,因为该技术的开发只得到一家公司的支持。在某些人乐观的想法看来,Java EE 堆栈始终都是完全开放,并且由社区驱动的。现在就因为一家公司失去了对 Java 的兴趣,整个 Java 世界天翻地覆了。

    本文由职坐标整理并发布,希望对同学们学习Java的知识有所帮助。了解更多详情请关注职坐标Java频道!

本文由 @小职 发布于职坐标。未经许可,禁止转载。
喜欢 | 1 不喜欢 | 0
看完这篇文章有何感觉?已经有1人表态,100%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程