皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

Eclipse基金会准备将Java EE做为EE4J开源

作者 Michael Redlich   ,译者 薛命灯 

Eclipse基金会已经做好将Java EE做为Eclipse Enterprise for Java(EE4J)进行开源的准备。来自Eclipse的执行官Mike Milinkovich正式介绍了EE4J以及他们正面临的挑战:

将Java EE移交给Eclipse基金会将是一项激动人心的事业。使用Eclipse开放的开发模型来加快Java在企业及云原生计算方面的创新是一个非常重要的契机。我们期待数百万开发者和众多企业组织融入到Java EE当中来。

Milinkovich列出了EE4J项目的几个最为重要的任务:

  • 迁移现有的GlassFish开源项目(130个GitHub仓库)。
  • 迁移Java EE TCK,让社区也用起来。
  • 创建一个开放的基础设施,让社区在上面开发和测试EE4J。
  • 在Eclipse基金会的支持下建立一个新的规范流程。

Milinkovich也指出,完成这些任务需要一定的时间,与Java社区之间的互动也有待完善。Eclipse已经创建了ee4j-community邮件组,开发者可以通过邮件组进行反馈或参与其中。

在最近的Java用户组(Java Users Group)会议上,著名的Java EE布道师Reza Rahman呈现了“Java EE 8和Java EE 9:你需要知道些什么“的演讲。他概括了Java EE的过去、现在和未来,评述了与Java EE 8相关的JSR以及现阶段的发展情况。Rahman也探讨了Java EE停滞不前的问题、Java EE守护者的出现以及促使Java走到今天这个地步的主要事件。

社区同仁们注意到,在JavaOne 2016之后的六个多月时间里,所有与Java EE API有关的活动几乎都停止了,这是前所未闻的。即使是在Sun公司最灰暗的日子里,都没有出现超过六个月没有动作的情况。我当时正在Oracle,后来离开了Oracle,而不就之后,“秩序使命”
就出现了,也就是所谓的Java EE守护者。我们的社区产生了一个大疑问,为什么会出现这样的状况,但没有人能回答这个问题,只有一片死寂。在经过一阵喧嚣之后,Oracle站出来说,“
抱歉我们停止了在Java EE 8上的工作,不过现在我们又开始了,而且是重装上阵”
。他们进行了另一轮问卷调查,就像在起初做的那样,用以了解我们最初开发的特性是否仍旧有意义。

从本质上说,Oracle所承若的事情与一开始的并没有太大区别。最大的变化是他们不想再推出任何Web框架。相反,他们把包袱丢给了Ivar Grimstad。Ivar是真正推动规范往前走的人,并希望能够尽快完成规范。他们去掉了JMS相关的工作,EJB则被保留下来作为冗余的组件模型,因为Oracle为了支持CDI并不打算完全弃用它。不过他们弃用了JSF托管Bean,这应该说是一个好消息。另外,他们并没有紧锣密鼓地进行JCache方面的工作。可以说,原先80%的东西都没有变化。不过,我们现在可以对Java EE 8和GlassFish 5翘首以待了。

除此之外,Oralce的另一举动则让我们大吃一惊。Oracle并不打算继续成为同时驱动Java SE和Java EE发展的公司,而决定放弃Java EE的控制权。他们把Java EE交给了Eclipse基金会,变成一个新的项目,叫作Eclipse Enterprise for Java(EE4J)。现在不存在绝对的统治者,现在只有公平的战场。任何一家有兴趣推动Java EE发展的公司都可以尽他们所能。Oracle仍然会作为参与者之一,但不再扮演当初的统治者角色。我认为这是非常重要的一个变化。Java的这部分根基从来没有这么自由过。所以,不要停下脚步,继续前进吧。

以下项目可能会出现在下一版本的Java EE中,不过Rahman说它们当中有一部分已经在MicroProfile 1.2里实现了:

  • 弃用EJB
  • JCache
  • OAuth、OpenID、JWT
  • 动态配置
  • Fat JAR、模块化
  • 健康检查和度量指标
  • 回路断路器和容错
  • 动态发现
  • 客户端负载均衡
  • NoSQL

Rahman总结说:

实际上,Java EE仍然举足轻重。或许你们已经知道,Java EE 8将带来一些很好的内容。这是一个值得我们关注的版本,我有绝对的理由对它们充满信心。Java从来没有如此开放过。就像我告诉大家的那样,虽然有些想法还存在准备阶段,但MicroProfile已经做了很多工作,这意味着下一版本的Java EE会很快与大家见面。如果大家想参与进来,那是再好不过了。现在是参与到MicroProfile和EE4J项目的最佳时机。EE4J还在制定章程,一周前我刚给他们的章程提供了一些反馈。现在是给Java生态系统注入活力的最好时机。

Rahman向InfoQ介绍了Java EE向EE4J迁移的相关进展。

InfoQ:你是如何看待新的EE4J项目的?

Reza Rahman:这是一件大好事。我们很想看到社区和业界将做何反应。但愿他们会认为我们现在有了一个真正开放的服务端Java,每个人都可以平等地参与其中。或许连微软、亚马逊和谷歌最后都会参与进来。

InfoQ:JCP专家组会继续参与Java EE的开发吗?

Rahman:但愿如此。很显然,整件事情是从JCP出来的,因为Oracle在JCP当中有很多间接或直接的因素影响着Oracle的控制权。Oracle可以影响JCP中的很多事情。希望JCP的同僚能够继续参与新模型监管,就如监管JCP模型一样。他们将会听到多方的意见。Oracle在专家委员会具有一票否决权,在JCP有一定的权力。但在这里,大家都是平等的,更加的民主。

InfoQ:所以现在就没有投票这种机制了?

Rahman:希望还会有吧。目前正在草拟章程,所以后续会有一个正式的流程。Eclipse基金会成立的委员会就是用来投票的。他们需要通过投票来决定下一个重大的里程碑。

InfoQ:那么他们正在往Eclipse监管模型上靠?

Rahman:是的。

InfoQ:他们将会有自己的投票流程,将会有更多的人有机会参与投票?

Rahman:希望如此。专家委员会只有固定的席位,而大部分席位是由Oracle内定的,甚至都没有经过选举。所以,真正的自主投票席位很少。新模型允许所有人参与到决议的制定当中。这里没有内定的席位,当然也没有Oracle在JCP专家委员会里的那种永久性席位。

InfoQ:在Java EE开源之后,Java EE守护者将何去何从?会有新的章程出来吗?

Rahman:我们在几个月更新了我们的章程。我们将注意力从Oracle身上转移到一个更加注重传播的长期章程上。我想我们需要一个重大的转变,但不改初心。我们不会专注于某个特定的组织,相反,我们会鼓励人们参与这个流程,寻求传播和发展,告诉人们Java EE是什么以及他们为什么应该关注它。

InfoQ:你认为其他平台(比如Spring)在Java EE的发展过程中将会扮演怎样的角色?

Rahman:在我看来,Spring几乎已经成为一种专属平台。他们是90年代微软的写照,当然是指在Java方面。虽然名义上说是开放的,但其实他们仍然紧紧地控制着他们的技术。事实上,他们的大部分贡献者和大方向都是由Pivotal公司在把控。从这方面来说,我倒是希望Pivotal能够加入EE4J成为一个平等的贡献者,推动技术朝着没有独裁者的方向发展。但同时,我认为Spring和Java EE是Java世界的阴阳两面。这多少让人感到一丝不安,但愿最终能够有好的结局。

InfoQ:我们还能将其称为Java EE吗?

Rahman:Java EE的名字不会变,EE4J只是整个项目的名字。Java EE的品牌不会改变。

相关资源

查看英文原文Eclipse Foundation Prepares to Open Source Java EE as EE4J

转自 http://www.infoq.com/cn/news/2017/10/towards-java-EE-at-eclipse