EE4J 项目情况汇总,微软加入 Jakarta EE 工作组

  • Michael Redlich
  • 无明

2018 年 5 月 22 日

话题:Java微软DevOps语言 & 开发架构

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

随着 Eclipse 基金会将Jakarta EE定位为云原生 Java 的新家,近期出现了一系列EE4J活动:

  • 最近创建了 9 个 EE4J 项目。
  • 最近提议了十个 EE4J 项目。
  • 至少有三个 EE4J 项目正在进行创建评估。
  • 微软加入 Jakarta EE 工作组。

EE4J 项目

根据JEP-320的内容,计划于 2018 年 9 月发布的 JDK 11 将不包括 Java EE 模块:JAX-WS(JSR-224)、JAXB(JSR-222)、JAF(JSR-925)、Commons Annotations(JSR-250)和 JTA(JSR-907),而这些模块已在 JDK 中存在了多年。

当 Eclipse 基金会执行总监Mike Milinkovich在最近的采访中被问及 Jakarta EE 和 JEP-320 相关问题时,他说:

由于 Java EE 正转向 Eclipse 基金会,他们 [甲骨文] 希望 SE 和 EE 之间保持绝对清晰的分界限。JTA 规范有一部分内容渗透到了 SE 中,所以也被 JDK 11 排除在外。这只是背景清理工作,与其他事项同时进行。

计划在 JDK 11 中移除的四个 Java EE 模块最终将进入 EE4J。在最近通过创建评审流程的 9 个项目中,Eclipse JTAEclipse Common Annotations已正式创建。Eclipse JAX-WSEclipse JAXBEclipse JAF目前正处于创建评审流程当中。

甲骨文最近对 EE4J 的贡献包括GlassFishJava EE TCK,它们最终将成为Eclipse GlassFishEclipse Jakarta EE TCK。它们也是最近为 EE4J 提议的部分项目。甲骨文表示:

甲骨文不断评审 GitHub 上的 Oracle GlassFish 源代码库是否已经做好贡献出来的准备。随着这些评估工作接近完成,甲骨文提出了与 Oracle GlassFish 5.0 组件相对应的 EE4J 子项目。这些子项目和代码库是在项目管理委员会(PMC)和社区评审之后创建的。然后,甲骨文将这些资源提交给 Eclipse 基金会,并提供新许可,经过评审后,最终发布在 GitHub 上的 EE4J 子项目代码库中。

Eclipse GlassFish 将成为今年 Jakarta EE 两个发布版本的重点。Eclipse GlassFish 5.1,也就是 Java EE 8,计划于第三季度末发布,而 Eclipse GlassFish 5.2,也就是 Jakarta EE 8,计划于 2018 年底发布。Eclipse Jakarta EE TCK 将提供 CTS 测试套件,用于实现各种 Jakarta EE 规范。

当被问及最近的项目提议时,Milinkovich 告诉 InfoQ:

是的,最近的提案包括了 GlassFish。其实,人们没有评论太多的反而是最重要一点,也就是开源所有 TCK 的项目提议。我认为,将所有 TCK 开源是非常重要的一件事。

最近提议的项目清单如下:

甲骨文的博客总结了他们迄今的贡献:

  • 已提议评审 34 个 EE4J 子项目。这些子项目代表了大部分 GlassFish 的参考实现,包括 GlassFish 项目本身、大部分主要 GlassFish 组件以及一个 TCK 贡献项目。
  • 已经创建了 20 个 EE4J 子项目,这些是准备好接收甲骨文贡献的项目。
  • 这些 EE4J 子项目的 15 个源码已交付给 Eclipse 基金会,包括主要的 Java EE 8 技术,如 Jersey(JAX-RS)、Mojarra(JSF)、Tyrus(WebSocket)、Open MQ(JMS),EclipseLink(JPA)、JSON-P 和 JTA。
  • 已经迁移了 13 个子项目源代码库。

Eclipse 保持所有 EE4J 项目的常青状态:

x 轴表示完成百分比:

  • 20% —— 提交给社区评审的项目提案
  • 40% —— 已分配的项目提交者和资源
  • 60% —— 提交给 Eclipse IP 团队的初始贡献
  • 80% —— 提交到 Git 代码库的初始贡献
  • 100% —— 已经进入第一次发布评估的项目

微软加入 Jakarta EE 作为参与者成员

最近,微软首席 Java 云开发者Bruno Borges要求加入 Jakarta EE 工作组作为参与成员。Twitter 捕捉到了来自 Java 社区的一些反应。

AWS 认证解决方案架构师Kevin Hooke表示:

微软希望加入 Jakarta EE 工作组,这件事迟早会发生,只是个时间问题。但 @brunoborges,微软首席 Java 开发倡导者,具体是什么时候?!

Azul Systems 的代理 CTO Simon Ritter表示:

可能性很大。从好的方面讲,从推出 #JavaEE 以来,@Microsoft 已经发生了很大变化。更多的贡献者只会让 #JakartaEE 变得更好。

Payara 的创始人兼董事Steve Milledge表示:

期待与微软合作,共同推进 @JakartaEE。

Eclipse 提交者和 JSR-339/370 EG 成员Markus Karg最近在博客上表达了对微软加入 JakartaEE 工作组一事的看法。他写道:

至少目前为止,微软没有一款产品实现了完整的标准(只支持几个模块)。

我曾经说过,微软将摆脱 Windows 而转向 Linux,而这件事现在正在发生。我也曾经说过,微软将放弃 C#和.NET 来支持 Java 和 Java EE。

随着新标准的启动,看着微软逐步成为 Jakarta EE 工作组成员,真是一件有趣的事情。

相关资源

查看英文原文Latest Roundup of EE4J Activities for Jakarta EE

Java微软DevOps语言 & 开发架构