骑猪兜风

甲骨文要放弃不赚钱的Java?开发者不安,心痛

骑猪兜风 2016-07-03 10:27:08    200883 次浏览

你可能听说过类似的消息了,甲骨文公司不声不响地撤掉了一项社区技术的资金和开发人员支持,而许多消费者和企业合作伙伴已经在这项技术上投入了大把的时间并编写了大量的代码。究其原因也简单的很:这技术,不挣钱啊!

甲骨文要放弃不赚钱的Java?开发者不安,心痛

甲骨文干这事儿也不是第一次了,对于那些被甲骨文收购的开源项目,这样的结局似乎成了一种宿命。从OpenSolaris到OpenOffice.org,都是这样的命运。这回轮到了Java头上,更准确的说,是Java企业版(Java Enterprise Edition,Java EE)。OpenSolaris和OpenOffice.org两个名字大概很多人都没听说过,但Java EE可是每个人都接触过的,作为一种服务器端技术,Java EE在全世界驱动着数以百万的网站和企业应用。甚至在许多不是基于Java的应用中,Java EE也扮演着不可或缺的角色。

甲骨文的律师已经就安卓系统Davlik编程语言的Java接口问题在法庭上和谷歌打了好几个月的官司了。这期间,甲骨文的Java开发进度明显减慢了,Java EE更是完全处于停滞状态。这完全停止开发进度让依赖Java平台的企业和Java社区里的许多用户都深感不安,要知道,这些人中有许多就是甲骨文最大的几个客户。

一些曾在甲骨文参与Java EE开发的员工曾在Java社区上透露,他们已经被分配到了别的部门。一些Java EE开发者们想要自立门户建设Java平台的言论也不是一两天了,他们想要自己实现java平台,摆脱对甲骨文手中这个20年历史的软件平台的依赖。尽管如此,尽管公司内负责管理Java标准的成员明确要求甲骨文就Java EE的未来做出规划,甲骨文仍然是一言不发。

Java社区独立选举的社区进程执行委员会成员Geir Magnusson就表示:“甲骨文在玩火。说来也是讽刺,现在竟然有一家公司让我们怀念起Sun来。”(译注:Sun是最初开发Java EE的公司,后来在2009年被甲骨文收购。)Magnusson觉得去猜测甲骨文的动机根本不可能,因为管理层的决策方式非常不透明。但如果非要从那些与甲骨文内部Java开发团队走得近的人透露的消息猜一下的话,可能甲骨文是要放弃Java了,毕竟它也不是第一次做这种事了。况且在公司正在法庭上和谷歌打官司的时候,就已经开始减少对Java EE开发的资金和人力支持了。

甲骨文对此事出奇的沉默,这让许多Java社区的成员担心甲骨文是不是不只要放弃Java EE,而是要扔掉整个Java平台。一个自称“Java EE守护者”的组织正在试着通过公共关系和联名请愿的方式给甲骨文施压,让它要么重启Java EE的开发,要么就让Java EE免费开放。但让甲骨文放弃Java这一大知识产权希望实在是渺茫,特别是现在谷歌在法庭上打赢了官司,甲骨文还准备再次上诉。

曾经在甲骨文从事Java宣传工作的Reza Rahman担任“Java EE守护者”的发言人,他说道:“我们目前从甲骨文听到的唯一消息是来自Java EE规范制定团队的,他们说目前无法继续进行自己的工作。然而他们并没有说他们现在正在干什么,或者在开发什么。”

Rahman相信甲骨文对Java不管不问会对全球IT业产生巨大冲击,无论长期还是短期都是这样。他解释道:“Java和Java EE是普适的技术,全球IT业的许多内容都基于它。整个Java生态系统是在过去的20年间逐渐形成的,它的开放标准受到了多家供应商的支持。可以说许多人的生计就依赖于Java了。”如果没有继续的资金支持和发展,整个Java生态系统的每个部件都会逐渐变得落后,全球IT行业也会随之减慢发展的脚步,直至找到合适的Java替代品。

当人们联系到甲骨文Java开发团队成员以及甲骨文客户,想要他们提供相关信息的时候,都受到了拒绝。他们大多害怕甲骨文会追究他们的法律责任。甲骨文的媒体部门也对Java的相关话题三缄其口,邮件和电话一概不回。

甲骨文作为商人的本性被人们编成了许多笑话,比如在“12个Java开发者的噩梦”评选中获得第四名的笑话是“你热爱开源运动、热爱分享,但你在甲骨文工作。”

甲骨文要放弃不赚钱的Java?开发者不安,心痛

封锁

人们希望甲骨文能够改变颁发Java使用许可的方式,但都遭到了拒绝。最近的一次尝试来自Java社区进程组织(Java Community Process,JCP),也在今年被甲骨文的律师们否决了。公司的法律团队表明,在当下谷歌的诉讼还没有结束的状态下,甲骨文是不会对许可方式作出改变的。

与此同时,JCP为监督Java标准变化所做的努力也逐渐被甲骨文的OpenJDK开发人员破坏掉了。OpenJDK的开发人员在没有联系JCP的情况下直接给Java平台添加了新的功能。JCP和非甲骨文员工的OpenJDK社区成员都对这种行为感到担忧,如果将来JCP被甲骨文架空,那就不好玩了。来自JCP的Milinkovich表示,随着OpenJDK的开发成果越来越多,同样是开源项目的一部分,JCP作为Java行业的领军组织之一,其地位也受到了威胁。但Milinkovich也说道他目前还不担心这一点:“作为开源社区的组织者之一,我相信开源的力量。我们需要澄清OpenJDK社区的角色,以及他们会给开源社区带来怎样的贡献。当然,对Java标准的影响也要说清楚才行。”

与此相比,Java EE可能取消的议论显得更加激烈。自打甲骨文刚开始减少对Java EE的开源版本,GlassFish,的资金和技术支持,人们的不满就不绝于耳。即便没有了商业支持,Open Glassfish仍然会在甲骨文员工的主导下进行开发,并与2013年6月12日和Java EE 7一同发布。在随后的一年里,Java EE有进步的,在2014年,JCP处理的关于Java标准的请求大多是关于Java EE的。而在同年的JavaOne峰会上,甲骨文和JCP更是共同宣布了Java EE 8的开发。他们设立了一个目标,那就是在2016年9月份完成标准制定。

云服务变成了新宠

在2015年,甲骨文加快了将工作重心转到云服务销售上的速度,Java开发部门的预算再次受到削减,特别是Java EE和GlassFish团队,削减更是严重。与此同时,甲骨文宣称Java EE 8的标准制定工作要推迟到2017年上半年才能完成。

在2015年八月份,Java EE团队正在紧张地处理一项涉及多个开发项目的问题时,却突然被公司叫停。甲骨文总裁发现数据库等中间件产品的销售额在2016年第二季度出现了下降后,决定关闭Java EE的大部分开发进程。这一举动吹响了在甲骨文董事们的领导下,全公司转向以云服务为中心的号角。甲骨文前高级副总裁Cameron Purdy因为主张重新给Java EE团队注资而被公司董事会革职。

甲骨文的预算削减给那些密切注视Java项目,特别是Java EE的人带来了很大影响。Java团队解决的问题数量出现了明显的下降, 而提交到各个项目的代码数量也比以前少的多了。原定于2016年第一季度推出的Java Server Faces新标准也没有了消息,具体推迟到什么时候推出也没有信。

在4月份,JCP执行委员会终于正式讨论了Java EE开发停滞的问题。代表伦敦Java社区的Martijn Verburg表示Java EE的进程在11月份就有停滞的迹象。他说:“现在看来,甲骨文旗下的Java EE JSR开发已经基本停滞,或者是完全停止了。一些甲骨文内领导相关标准开发的人已经公开承认自己已经被公司分派到其它项目上去,没有时间开发JSR了。”

开源运动的好机会

甲骨文对此举没有做任何解释,这无疑给Java社区和生态系统带来了很大的负面影响。Verburg表示:“一些主张独立的人已经开始讨论重拾Java EE开发,以及考虑更换Java EE领导权的问题。”没有了甲骨文的表态,各个公司只能根据自己的现有框架去应对客户们的新需求,这无疑会让Java社区变得更加分散。

Verburg声明:“我们需要甲骨文的官方消息!”如果甲骨文对JCP关于Java EE的请求不管不问,就表明他们根本不重视JCP。

截至目前,甲骨文仍然没有发布任何公开声明。大部分社区成员依然很失望。即便是一些金融服务公司的JCP代表都对此表示担忧。Java EE守护者团队建设了一个抗议网站并组织了一次请愿活动。在最近的JCP执行委员会会议上,Verburg更是感叹道:“甲骨文对此不管不问,显然是对Java生态系统没兴趣了。”他同时表示自己的公司不会再依赖于Java EE,因为未来甲骨文随时可能叫停Java EE的开发。多么讽刺啊,JCP委员会成员公开表示他们不能再依赖于Java EE了。

Milinkovich 坦言甲骨文终究还是那个甲骨文,他评论道:“甲骨文的一大特点就是作出决定后坚决执行,有人说这是优点,也有人说这是缺点。因为甲骨文公司庞大,这些决定需要一段时间才能生效。我觉得甲骨文在推动JavaOne开发的同时应该给java EE制定好路线图,不然就太说不过去了。”

残局

我们有很多理由相信甲骨文不会让Java EE彻底消失,其中一个就是他们自家的许多产品也依赖于Java EE。尽管Java EE对甲骨文来说不如Java SE有战略意义,但它仍然直接或间接地位甲骨文70%的软件授权和支持收入做出了贡献。

来自Java EE守护者组织的Rahman 表示他希望甲骨文能够对舆论压力做出反应。他说守护者组织的活动才开展了几个星期,现在就说甲骨文永远不会有反应还为时尚早。如果甲骨文现在回心转意的话,事情还没有发展到无可救药的地步。其他人则不认为甲骨文会做出积极回应,Magnusson 表示甲骨文不是一个习惯被别人推来推去的公司。

当然,甲骨文王完全可以砍掉Java EE而且不让任何其他人接手。这种动作的影响远远不止于企业用户,而是会动摇甲骨文对Java整体的信心,要知道Java现在可是物联网的最佳选择。

Rahman说道,甲骨文摆脱java的最好办法就是把Java平台整个捐给Eclipse Foundation, Apache, ECMA, 或者W3C这样的组织。这样一来希望继续使用Java的用户和企业还可以接着开发。但连他自己都怀疑甲骨文决定放弃java EE之后还会这么好心的把它捐掉?

甲骨文要放弃不赚钱的Java?开发者不安,心痛

Java启示录

如果甲骨文真的决定走“毁灭一切”的路,被来就落后的安全补丁开发就会完全停止。数千计使用Java EE的服务器和云服务都会受到威胁,他们最终不得不替换掉植入的Java EE组件,或许那些抛弃甲骨文JCP的公司会出资开发一个新的开源项目来替代Java。许多公司已经在考虑这种情况,作为最后一根稻草,其它厂商已经开始讨论开发一套独立的Java API的方案。如果事情真的走到这一步,JCP也会加入他们。

鉴于这些原因,甲骨文更有可能选择让Java社区进程委员会的成员来领导Java EE的开发,而自己则保留Java SE的领导权。因为Java EE依赖于Java SE核心,这样一来甲骨文依然保有对Java平台的控制权。即便IBM或Red Hat接管了Java EE标准制定,也不能威胁到甲骨文的地位。

同时Rahman相信继续开发Java EE会给甲骨文带来更多利润。他认为能否成功的管理Java是决定甲骨文在云服务中取得开发者、顾客以及行业信任的关键。作为成功推广Java的公司,如果能亲手把Java带入云服务,将会是战略性的胜利。但话说回来,想要甲骨文为了商誉继续开发java EE恐怕比较困难。特别是现在公司正和谷歌在法庭上战的不可开交,此时动摇对Java这一知识产权的所有权不是在打自己的脸吗?请愿活动估计也会收效甚微,前Sun公司首席开源官(chief open source officer)直截了当地说道:“一场不能威胁甲骨文营利的请愿活动是没有效果的。”

考虑到现在甲骨文的利润额继续上升,而公司的两名联合首席执行官目前是科技行业薪资最高的两名高管,想要赢得他们的注意力相当困难。在这一切有所改变之前,我们唯一能确定的就是Java EE会一直站在悬崖边上。

内容加载中