首批九個建議加入EE4J的項目
Eclipse基金會先期提出了九個 注定要包含在EE4J(Eclipse Enterprise for Java)中的項目,它們是:
- Eclipse Grizzly ;
- Eclipse OpenMQ ;
- Eclipse Mojarra ;
- Eclipse Message Service API for Java ( JSR 914 );
- Eclipse Tyrus ;
- Eclipse Java API for RESTful Web Services (JAX-RS);
- Eclipse Jersey ;
- Eclipse WebSocket API for Java ( JSR 356 );
- Eclipse JSON Processing 。
正如在EE4J 憲章 中所指出的,這些項目是Oracle Java EE 8和GlassFish技術轉交Eclipse基金會工作的一部分。在與EE4J的集成中,所有的新項目將遵循 Eclipse Development Process 。
另外兩個項目, EclipseLink 和 Eclipse Yasson ,已經在 遷移到EE4J的過程中 。所有Eclipse基金會項目的相關信息,都提供在 項目活動新聞 上。
InfoQ就這九個新項目,采訪了Dmitry Kornilov和Mike Milinkovich。Kornilov是Oracle的高級軟件開發經理,而Milinkovich是Eclipse基金會的執行董事。
InfoQ:這些要加入到EE4J中的項目是如何選取的?
Dmitry Kornilov:這九個項目是從30多個項目中選取。我們(即Oracle公司)正規劃將Java EE轉交Eclipse基金會。我們的目標是選出社區最感興趣的項目,并盡快將它們轉交給Eclipse。自從這些項目的早期參與者構建了更大規模的PMC后,我們就與他們一起工作,選出了這九個項目。
Mike Milinkovich:總而言之,我們使用了金發女孩規則(Goldilocks rule):不能過大,不能過小,恰到好處。
在將Java EE轉交給Eclipse基金會中,需要做大量的工作,我們想要通過選取一些項目,演練如何將項目加入Eclipse。我們選定了這些項目,因為它們合理地代表了所有需要轉交項目,但是它們并非其中規模最大的項目。想想Glassfish項目的規模吧。
InfoQ:將來是否會給出更多來自于Java EE 8和GlassFish的項目?
Kornilov:Oracle所有的Java EE 8項目,最終都將轉交給Eclipse基金會。其中包括GlassFish,以及其它GlassFish技術。Oracle已啟動了對第二批項目的準備工作。
Milinkovich:是的。所有項目終將進入Eclipse基金會,包括所有的GlassFish技術,以及受Oracle控制的Java EE引用實現項目。此外,所有的測試兼容包(TCK,Test Compatibility Kit)也將加入Eclipse基金會,并首次在開源許可下可用。還有,未來的Java EE版本規范過程將由Eclipse基金會給出。因此,我們將創建一種全新的規范過程,替代過去JCP在Java EE中承擔的職責。
我要繼續強調指出的是,TCK將會是開源的。過去,TCK只對Oracle許可證頒發者在保密協議(NDA)下可用。這嚴重地阻礙了在企業和云原生Java上的創新。我認為迄今為止,開源TCK的重要性尚未得到足夠的重視。在這一生態系統中,TCK可以實現許多新的創新。
InfoQ:目前,社區的反響如何?
Kornilov:反響非常積極。一段時間以前,社區就請求將Java EE轉交給開源社區。他們很高興看這一工作正在推進中。從我們一方,我們對此認真對待,并正盡最大努力快速平滑地實現轉交工作。
Milinkovich:反響非常好。很高興看到很多開發人員對該技術將轉交給Eclipse基金會歡欣鼓舞。隨著人們開始開始將注意力轉向我們對Java EE生態系統所做的所有改進,期間一直存在著一些小的波折。任何改變都是很難,即便是這樣非常有積極意義的改變,同樣如此。
InfoQ:社區審查將持續多長時間?
Kornilov:按Eclipse基金會的規則,一個建議將對社區審查開放至少兩周時間。
Milinkovich:目前尚略有不明晰之處。理想情況下,項目將在12月18日周一創建,隨后我們將立刻開始遷移源代碼。但是此前尚有一些法律細節問題需要解決。在最壞的情況下,這些項目將在2018年初開始運作。
InfoQ:EE4J中即將發生什么?
Kornilov:很多事情正在發生。EE4J的第一個目標,是將所有Java EE項目轉交給Eclipse基金會,并發布首個EE4J版本。計劃是使EE4J兼容Java EE 8。第二個目標是定義一種新的標準過程,EE4J將使用新的標準過程,替代JavaEE曾使用的JCP過程。最后一個目標是基于已確定的過程,發布一個完全社區驅動的企業級Java新版本。
Milinkovich:下面列出接下來六至九個月乃至更長時間中的優先事項:
-
將EE4J建成一個運作良好的開源項目和社區。其中涉及將大約50個項目以及數千萬行代碼遷移到Eclipse中。這50個項目分別具有各自的項目負責人和提交者。我們期望這數百名人能作為新的提交者添加到Eclipse社區中。所有這些提交者都需要學習的是,如何作為Eclipse項目團隊的一部分而參與其中。作為其中的一部分,我們必須將所有代碼重新授權給EPL-2.0許可證,并正常開展知識產權審查。
-
將所有這些項目的構建架構,從Oracle遷移到Eclipse基金會的通用構建架構上。
-
開源所有TCK。這將是一個很艱巨的任務,因為其中涉及數以千計的測試,并且很多代碼以前從未開源過。
-
交付首個兼容Java EE 8的EE4J版本。這是EE4J的真正開始之處。任何開源社區的核心,都在于讓運行代碼對開發人員可用。實現得越快,在我看來越好。
-
建立一種全新的規范過程,替代以前在改進Java EE標準中使用的基于JCP的方法。
-
創建新的名稱和品牌,替代過去使用的Java EE。其中將包括支持新品牌的財團,以及對WebLogic、WebSphere、JBossApache Tomee和Payara等兼容獨立實現的核證過程。
希望大家能認識到,這是一組雄心勃勃的目標。要實現這些目標,我們將會非常非常地忙碌。我建議大家對此能保持耐心。
InfoQ:Kornilov,當前您在Oracle的職責是什么?也就是說,您的日常工作是什么?
Kornilov:我當前正管理一個工作于布拉格的開發團隊,負責各種Java EE組件的開發,包括JSON-B/P、JPA、JAX-RS、JAX-B、JAX-WS、Metro等。我還在EE4J項目管理委員會(PMS,Project Management Committee)中代表Oracle公司。我通常在工作日中會花費一半的時間在各種會議上,包括管理、規劃、審核、頭腦風暴、設計等,另一半時間答復郵件。當然,我現在正在做后者。
InfoQ:Milinkovich,當前您在Eclipse基金會的職責是什么?也就是說,您的日常工作是什么?
Milinkovich:在過去的13年中,我一直是Eclipse基金會的執行董事。Eclipse基金會是一家受成員資助的獨立開源基金會。我的日常工作聚焦于推進我們的開源項目和商業生態系統日新月異。
來自: http://www.infoq.com/cn/news/2017/12/first-nine-projects-for-ee4j