近日,甲骨文在接受记者采访时表示,“高度关注”Java的发展,但似乎已经计划放弃Java EE——即Java平台的企业版。此外,甲骨文还表示将在今年9月于旧金山召开的JavaOne大会上公布Java EE 8的未来发展规划。
据了解,Java EE 8将于2018年上半年正式推出,不过在过去半年中,甲骨文方面似乎已经停止了对Java EE 8的开发投入,同时悄悄将资源及人力投入到其它产品与项目当中。考虑到Java EE已经成为成千上万业务应用的重要组成部分,这样的迹象自然引发了广泛恐慌。
日前针对这种恐慌情绪甲骨文做出回应,并提到了Java EE的未来发展规划。“甲骨文公司高度关注Java,同时亦为下一代Java EE规范版本,即Java EE 8,筹备了良好的提案,其将支持开发者们更好地利用微服务架构在规模化分布式计算与基于容器的云环境内设计并构建新型应用。”甲骨文发言人Mike Moeller表示,“甲骨文公司正与Java社区中的各重要合作伙伴进行紧密协作,旨在完成这一提案,并将在今年9月的JavaOne大会上同Java社区分享更多细节信息。”
Java EE面向企业级应用提供API与Runtime,同时亦通过Java社区项目进行开发。从本质上讲,Java EE属于一套由多家企业共同推动,由甲骨文及其它Java EE厂商(例如IBM与红帽)共同实现的开放规范。
根据我们掌握的情况,甲骨文公司大概从一年前开始对Java EE进行雪藏,同时着手构建了一套新的企业友好型Java Runtime及API,更重要的是甲骨文对此拥有充分的支配权,且不必与IBM、红帽乃至其它参与企业共享。尽管这套新接口仍将使用部分Java EE组件,但其中有80%~90%的部分具备专有属性。
随着甲骨文公司内部对于专有项目的大力推进,Java EE的相当一部分资源也被转移给前者。虽然甲骨文公司对此并未声张,但Jave EE社区却有所察觉,而随后的Java EE 8将延后至2017年发布的消息,以及甲骨文不再为Java EE方案提交源代码的作法也进一步加剧了双方矛盾。
由甲骨文为JavaServer Faces方案提交的代码量明显在逐渐减少。
在此期间,Java EE社区组建了Java EE护卫队,旨在向甲骨文方面施加压力以敦促其继续践行对Java EE 8的开发承诺。护卫队的成员包括Java之父James Gosling以及负责Java EE开发工作的Java社区进程委员会的多位成员。
“越来越多的证据表明,甲骨文公司已经明显忽略了Java EE项目,这将严重损害高度依赖Java EE发展起来的广泛生态系统。”Java EE护卫队在其change.org上的请愿书中指出,同时呼吁甲骨文掌门人Larry Ellison重新关注这套企业版本。
护卫队称:“甲骨文公司在Java EE项目中的几乎全部工作都已经在过去六个月中逐步趋于停顿。除非情况很快出现变化,否则Java EE 8根本不可能按照其原本承诺的时间实现发布。”
不过就在最近,来自社区、IBM以及红帽等各方的巨大压力让甲骨文意识到,其转向专有API的策略很可能引发巨大灾难,这不仅会给相关生态系统造成巨大危害,同时也不会有任何人愿意支持这款沾满罪恶的全新闭源API。
因此如今甲骨文方面再次回归Java EE 8的原本发展规划:其很可能会努力在2017年上半年按承诺推出新版本,但为了满足发布时间点,部分新功能也许会在稍后陆续推出。
这套新规范的早期草案曾于2015年第四季度进行发布,但原本定于2016年第一季度推出的公共预览版本则截至目前仍无踪影。然而,我们相信只要全力以赴,甲骨文方面仍有机会赶在今年第三季度的JavaOne大会上拿出最终草案。
“这绝对是条好消息,甚至堪称惊喜。”甲骨文公司前员工、Java EE护卫队Java专家兼发言人Reza Rahman在采访中表示,“我们对于甲骨文公司目前听取社会各界意见并努力寻找解决办法的态度非常赞赏,希望甲骨文方面未来能继续秉持这一Java EE项目管理态度,即将其视为标准而非仅仅是一款产品。”