Java EE重命名为Jakarta EE:Java EE Guardians与Oracle的分歧
由于对Oracle不热心回应Java社区反馈感到失望,Java EE Guardians于今年早些时候提交了一封公开信,表达了他们对Oracle限制使用EE4J的“Java”和“javax”包名的担忧。Oracle依据其商标使用准则,继续保持自己的立场。著名的Java EE布道师Reza Rahman,同时担任CapTech Consulting的高级架构师,也以个人名义向Oracle发出了一封公开信。
在Oracle于2017年8月开源Java EE后不久,Rahman就Java EE可能会重命名的问题做了一项Twitter调查,结果如下:
Java社区投票压倒性地支持保持Java EE名称。
Oracle在2017年9月宣布将Java EE所有权转交给Eclipse Foundation时,曾明确表示希望Java EE重命名。Java EE Guardians对此设立了一个表单,供Java社区提供反馈。所有意见都将发送到Oracle的feedback@javaee.groups.io电子邮件地址,同时也将发送给一些IBM,Red Hat和Eclipse的高级员工。近期,Rahman告知InfoQ:
毫无疑问,在如何命名Java EE问题上,使用电子邮件方式获得了最多反馈。即使是现在,人们仍然在使用电子邮件方式将他们的想法告知Oracle。
2017年11月,Eclipse基金会的开源项目总监Wayne Beaton发起了一项选择新项目名称的提名程序。他解释了这一做法的合理性:
我们需要一个新项目名称去替代“Java EE”。类似于OpenJDK项目实现了Java SE平台规范,EE4J项目将为当前称为Java EE的项目提供一组规范的实现。我们需要命名这一套规范。
提名程序将开放两周,提名结果将由EE4J项目管理委员会(PMC)做审查。
Rahman再次征求了来自Java社区的反馈。这次,Rahman开展了一次是否保持Java EE和javax.enterprise
包名的调查:
和上次调查一样,Java社区投票压倒性地支持保留Java EE名称和javax.enterprise
包名。
Rahman在发给Oracle的公开信中,总结了Java EE Guardians在项目重命名中的立场:
我们认为这一要求并不符合社区和行业的最佳利益。随着Java EE进一步向微服务,云计算和无服务器计算方向发展,这可能也同样不符合Oracle自身的商业利益。
最明显的证据表明,社区的看法是目前对Java EE做重命名和重打包这一方向是错误的。通过对开发人员的调查,他们完全支持保留Java EE名称和“javax”包。即便近期EE4J计划已经发布,在最近数月中,他们所表示出的强烈意愿依然没有改变。
Oracle的WebLogic Server产品管理高级总监Will Lyons回应了Rahman。他说:
Java EE开发过程自最初创建以来,行业已经发生了变化。我们并不认为Java EE的开发过程足够便捷、灵活和开放。我们的共同目标是创建一个更便捷的流程、具有更灵活的许可,并实现更多不依赖于单一供应商的开放式管理。我们相信这一做法将鼓励更多的参与和创新。我们看到这一新方向受到了来自于整个社区的普遍支持。
这一新方向意味着许多变化,这些变化是以技术开发过程的变化为开始。Java EE过程,或者更具体说是用于Java EE开发的JCP进程,是一个高度结构化的进程,授权规范会对技术的指定和实现方式产生重大影响。EE4J过程会略有不同,它将会更加开放。包括Oracle在内的各个单方面供应商将继续贡献自己的力量,只是对于新的EE4J技术如何发展将不再具有原来的影响力。这是社区迈出的积极一步,我们相信大家会就此达成共识。
目前,现有Java EE中javax.*
包的所有权已转交给Eclipse基金会。虽然Java社区仍然可以使用原有包名,但新包的命名应该是org.eclipse.xxx
。
Rahman和Java EE Guardian做了大量努力收集社区统计数据,希望能继续保留“Java”和“javax”名称。尽管如此,确定Java EE新名称的过程在继续推进。最近,一个新的民意调查开放供人们选择Java EE的新名称,其中给出了两个选项:
- Jakarta EE
- Enterprise Profile
投票将于2018年2月23日关闭,每位参与者只能投票一次。
Jakarta EE
Jakarta曾被Apache基金会用于管理各个Java子项目,诸如Ant、Commons、JAMES等。2011年12月,在所有子项目都被迁移为独立项目后,Jakarta名称就不再使用了。
Tomitribe的创始人David Blevins最近撰写博文介绍了从Java EE到Jakarta EE的迁移,同时也提到了Tomitribe对重命名的最初立场:
我们对Java EE重命名一直保持沉默,很大程度上是由于我们喜欢“Java EE”,更大原因在于围绕Java商标问题在法律上的高度复杂性。
“Jakarta EE”这一命名最初是IPFW的高级程序员和分析师Kenneth Jaeger对Beaton在2017年11月的博客文章的回复中提出的。但是正如Blevins回忆的情况,该命名当时并未得到很好的反响:
他的回复立刻被其它八个回复湮没了。我承认自己最初也不喜欢这个命名。几个星期后,神奇的事情在这种情况下发现了,我们自发地采用了这一早已提出的事情。
Cybercom Group的首席顾问Ivar Grimstad也撰写博文表示他对Jakarta EE命名的支持。
InfoQ就重命名问题采访了Rahman。他给出了如下声明:
我十分确认,无论强行将EE4J从官方开放标准Java平台上推迟的决定是什么,并不适用于社区中的绝大多数人。不幸的是,我认为社区在这个阶段已经做了其所能做的一切建设性工作。如果Oracle经过这场艰苦的拉锯战后,仍然拒绝放弃对Java EE品牌的控制权,那么采取重命名的做法会对EE4J项目造成进一步的破坏。
Jakarata EE是我们将要给出的新命名,它最接近于和Oracle达成合作。这就是我的Java EE Guardian同事Kenneth Jaeger最初提出它的原因。我很高兴EE4J采纳了他的建议,而且Apache也允许使用这个名字。Jakarata EE可以简洁地缩写为JEE,并且Jakarata这个名字在开源Java和Sun Microsystems上有着深厚的传统。这一命名一直受到社区的热烈欢迎,这是一个伟大的标志。我希望Jakarata EE能胜出。
转载自:http://www.infoq.com/cn/news/2018/02/from-javaee-to-jakartaee
查看英文原文:From Java EE to Jakarta EE: the Java EE Guardians Rebranding Debate with Oracle