EE4J项目情况汇总,微软加入Jakarta EE工作组
\\\看新闻很累?看技术新闻更累?试试下载InfoQ手机客户端,每天上下班路上听新闻,有趣还有料!
\
随着Eclipse基金会将Jakarta EE定位为云原生Java的新家,近期出现了一系列EE4J活动:
\\- 最近创建了9个EE4J项目。\\t
- 最近提议了十个EE4J项目。\\t
- 至少有三个EE4J项目正在进行创建评估。\\t
- 微软加入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 JTA和Eclipse Common Annotations已正式创建。Eclipse JAX-WS、Eclipse JAXB和Eclipse JAF目前正处于创建评审流程当中。
\\甲骨文最近对EE4J的贡献包括GlassFish和Java EE TCK,它们最终将成为Eclipse GlassFish和Eclipse 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开源是非常重要的一件事。
\
最近提议的项目清单如下:
\\- Eclipse EJB\\t
- Eclipse Interceptors\\t
- Eclipse JACC(用于容器的Java授权合约)\\t
- Eclipse JASPIC(用于容器的Java授权服务提供程序接口)\\t
- Eclipse JCA(Jakarta EE连接器架构)\\t
- Eclipse Project for JSP\\t
- Eclipse Servlet\\t
- Eclipse Stable Jakarta EE API(为稳定(传统)的Jakarta API、RI和TCK提供了一个地方,它们的开发进入非活跃状态)\\t
- Eclipse Jersey\
甲骨文的博客总结了他们迄今的贡献:
\\- 已提议评审34个EE4J子项目。这些子项目代表了大部分GlassFish的参考实现,包括GlassFish项目本身、大部分主要GlassFish组件以及一个TCK贡献项目。\\t
- 已经创建了20个EE4J子项目,这些是准备好接收甲骨文贡献的项目。\\t
- 这些EE4J子项目的15个源码已交付给Eclipse基金会,包括主要的Java EE 8技术,如Jersey(JAX-RS)、Mojarra(JSF)、Tyrus(WebSocket)、Open MQ(JMS),EclipseLink(JPA)、JSON-P和JTA。\\t
- 已经迁移了13个子项目源代码库。\
Eclipse保持所有EE4J项目的常青状态:
\\\\x轴表示完成百分比:
\\- 20% —— 提交给社区评审的项目提案\\t
- 40% —— 已分配的项目提交者和资源\\t
- 60% —— 提交给Eclipse IP团队的初始贡献\\t
- 80% —— 提交到Git代码库的初始贡献\\t
- 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工作组成员,真是一件有趣的事情。
\\相关资源
\\- Background on Oracle's Contributions to Jakarta EE by Will Lyons (April 24, 2018)\\t
- Scaling Up the Continuous Integration Infrastructure for Eclipse Foundation's Projects by Mikaël Barbero (April 27, 2018)\\t
- Jakarta EE Projects Summary by Dmitry Kornilov (May 9, 2018)\