两个用于Eclipse的TCK –开源到底有什么?
早在5月,Oracle就向Eclipse Foundation 授予了兼容性測(cè)試獎(jiǎng)學(xué)金 。 在過去的幾天里,這引起了媒體的關(guān)注,我只是想確保我對(duì)整個(gè)過程和詳細(xì)動(dòng)作有所了解。 看起來像是一見鐘情的簡單誠實(shí)的禮物實(shí)際上具有更多的方面。 但讓我們從頭開始:
技術(shù)兼容性套件
由Java社區(qū)流程(JCP)覆蓋,開發(fā)了Java語言和最上層的各種平臺(tái)(Java SE,Java EE,Java ME)。 每個(gè)JSR(Java規(guī)范請(qǐng)求)包括EG(專家組)一堆文件,當(dāng)然還有參考實(shí)現(xiàn)(RI)和相應(yīng)的TCK(技術(shù)兼容性套件)。 可以對(duì)照實(shí)現(xiàn)執(zhí)行TCK,并檢查它們是否符合規(guī)范。 因此,它基本上是規(guī)范文檔的代碼等效項(xiàng)。 大多數(shù)TCK包含一堆測(cè)試用例以及執(zhí)行測(cè)試的“測(cè)試工具”。 如果每個(gè)JSR有一個(gè)TCK,可以安全地假定至少有與我們?cè)贘CP中擁有活動(dòng)JSR一樣多的TCK。 但這只是理論上的想法。 實(shí)際上沒有。 至少?zèng)]有公開可用。 除了JBatch,CDI和Bean驗(yàn)證之外,我想不得多了。 這些只是Java EE平臺(tái)的一部分,該平臺(tái)至少具有28個(gè)規(guī)范。 不幸的是,大多數(shù)TCK都在Oracle的控制之下。 但為什么? 這樣做的主要原因是,TCK還用作平臺(tái)認(rèn)證的工具。 針對(duì)實(shí)現(xiàn)成功運(yùn)行TCK證明了它的正確性以及某種程度上的合規(guī)性。
平臺(tái)認(rèn)證實(shí)際上是什么意思?
平臺(tái)兼容性是產(chǎn)品的絕佳廣告。 Java EE兼容性列表是Java EE服務(wù)器市場(chǎng)的“誰是誰”。 如果您的產(chǎn)品不在該列表中,則基本上沒有機(jī)會(huì)被認(rèn)可。 Apache Tomcat是該規(guī)則的唯一已知例外。 但是,獲得認(rèn)證需要什么呢? 對(duì)于Java EE,有一個(gè)Java EE兼容性測(cè)試套件(CTS),可能只包含各個(gè)TCK的總和。 老實(shí)說我沒看過。 您必須成為Oracle的被許可方才能訪問它。 而這正是它開始變得昂貴的地方。 我不知道到底有多貴,但是一旦付款,您就可以通過Java Partner Engineering網(wǎng)站訪問CTS。 只有一種方法可以使用CTS。 通過兼容性測(cè)試獎(jiǎng)學(xué)金計(jì)劃 ,這是非營利組織和個(gè)人申請(qǐng)免費(fèi)CTS的一種方式。 這些請(qǐng)求由審查委員會(huì)進(jìn)行判斷。 那里有一個(gè)PDF ,解釋了此過程的工作原理。 截止到今天,除ASF之外,其他各種組織和個(gè)人也可以使用個(gè)人TCK和CTS。 現(xiàn)在,您已經(jīng)了解了基本程序和認(rèn)證,現(xiàn)在可以更輕松地查看已獲得CTS獎(jiǎng)學(xué)金的兩個(gè)Eclipse項(xiàng)目的詳細(xì)信息。 我需要在下面加上一些免責(zé)聲明。 我只能從眾所周知的結(jié)論中得出結(jié)論。 對(duì)于背后的原因,我沒有任何見解或進(jìn)一步的信息。 它可能比我想出的要簡單得多……
EclipseLink – JPA參考實(shí)現(xiàn)
根據(jù)5月初的新聞稿,Oracle通過向Eclipse Foundation授予對(duì)兩個(gè)TCK的訪問權(quán)限和相關(guān)的支持服務(wù)來展示其“對(duì)Java開發(fā)人員和開放源代碼社區(qū)的承諾”。 是時(shí)候開始思考了。 EclipseLink不是JPA的RI嗎? 如果不自己為JPA構(gòu)建TCK,他們到底在做什么? 他們?yōu)槭裁葱枰S可證?
EclipseLink的根源于TopLink。 任何了解TopLink歷史的人都知道,這是一個(gè)相對(duì)較舊的產(chǎn)品,在被Oracle收購之前,它屬于WebGain。 WebGain曾是Eclipse的強(qiáng)大支持者,甚至在2002年還是董事會(huì)成員。僅在Oracle TopLink收購WebGain五年后,WebGain便被捐贈(zèng)給Eclipse Foundation。
從此 。 EclipseLink在EPL 1.0下可用。 項(xiàng)目本身不包含TCK。 RI的困境。 查看提交者列表并不十分令人興奮。 30個(gè)人 而且只有一個(gè)非Oracle。 我為什么認(rèn)為這個(gè)團(tuán)隊(duì)實(shí)際上擁有TCK(內(nèi)部是Oracle)甚至開發(fā)它? 嚴(yán)格來說,EclipseLink的許可不符合TCK許可規(guī)則。 此處授予獎(jiǎng)學(xué)金許可證只是糾正了該星座中的一些法律問題。
處女座– Java EE Web Profile Server
但是對(duì)于處女座,授予的許可確實(shí)會(huì)有所作為,對(duì)吧? 也許。 處女座是以前的Spring dm服務(wù)器,由SpringSource在2010年捐贈(zèng)給Eclipse Foundation。 提交者列表繪制的圖片與TopLink列表不同。 每個(gè)名字背后都不僅僅是SAP。 提交者在三家公司之間平均分配。 SAP,Pivotal和Tasktop技術(shù)。 后者有一個(gè)有趣的管理委員會(huì)。 SpringSource前首席運(yùn)營官Neelan Choksi和Rod Johnson本人也是成員。 這可能表明Pivotal對(duì)項(xiàng)目的影響要比SAP多。 無論如何,兩家公司很可能不是甲骨文的大伙伴。 獎(jiǎng)學(xué)金許可證顯然不是送給他們的禮物。 實(shí)際上,處女座已經(jīng)通過Java EE 6認(rèn)證。 但是,用另一個(gè)名字。 SAP NetWeaver Cloud在處女座上建立了Java EE 6 Web Profile產(chǎn)品。 因此,SAP可能已經(jīng)從Oracle獲得了許可證,并自己獲得了Virgo的認(rèn)證。 我不確定,但有人可能會(huì)想到,使用已經(jīng)認(rèn)證的服務(wù)器比逐年支付年度專利費(fèi)便宜。 鑒于Eclipse基金會(huì)是一個(gè)非營利組織,因此很容易申請(qǐng)獎(jiǎng)學(xué)金計(jì)劃來進(jìn)行排序。 至少在這種情況下有積極的副作用。 處女座現(xiàn)在有機(jī)會(huì)成為另一個(gè)獲得Java EE認(rèn)證的服務(wù)器。 SAP已經(jīng)證明了這是可能的。 不久以后,社區(qū)可能會(huì)通過擁有新的EE 7認(rèn)證的OSS服務(wù)器來獲利。
但這是線下的正數(shù),對(duì)嗎?
兩個(gè)新項(xiàng)目可以訪問他們正在實(shí)施的規(guī)范的TCK。 那是積極的。 從公開可用的TCK總數(shù)來看,仍然令人沮喪。 尤其是在EclipseLink的情況下,這令人沮喪,因?yàn)門CK可能根本不公開。 去年對(duì)JPA郵件列表進(jìn)行的冗長討論稍微討論了此問題并說明了缺點(diǎn)。 盡管隨著JSR-348的更改而變得越來越好。 我們還不在那里。 實(shí)際上,我希望所有相關(guān)方都可以使用TCK。 通過在規(guī)范中以及在RI的測(cè)試區(qū)域不足的地方發(fā)現(xiàn)漏洞,可以提高規(guī)范和參考實(shí)現(xiàn)的質(zhì)量。 兩者都可以防止許多錯(cuò)誤影響用戶。 作為針對(duì)TCK的新許可模型的工作,是JSR 358的關(guān)鍵部分。 隨附的Java.net項(xiàng)目包含所有討論資料,并且可以公開訪問。 每個(gè)人都可以自由參加討論并發(fā)表自己的意見。 觀察者郵件列表可用于任何已注冊(cè)的java.net用戶。 如果您對(duì)CloudBees,Red Hat和IBM對(duì)許可問題的看法感興趣,可以在演示頁面上找到更多資料。 Oracle本身建議在JCP的未來版本中繼續(xù)使用標(biāo)準(zhǔn)的TCK許可模型:
“必須根據(jù)一項(xiàng)或多項(xiàng)已批準(zhǔn)的開源許可證和/或標(biāo)準(zhǔn)商業(yè)TCK許可證,為將來的所有JSR提供TCK,以用于認(rèn)證和商標(biāo)目的。 必須根據(jù)標(biāo)準(zhǔn)的JCP社區(qū)TCK許可證,將所有未來非傘式JSR的TCK提供給相關(guān)RI開源項(xiàng)目的所有參與者。 ”(來源: Oracle針對(duì)JSR 358的提案 ,PDF,第15 +16頁)
這將是朝著正確方向邁出的一步,并且將對(duì)開源社區(qū)產(chǎn)生真正的幫助。 如果授予的TCK不能作為禮物:僅僅解決目前的問題還不夠。 如果將來會(huì)更好,我們需要進(jìn)行總體更改。
翻譯自: https://www.javacodegeeks.com/2013/08/two-tcks-for-eclipse-what-is-really-in-it-for-open-source.html
總結(jié)
以上是生活随笔為你收集整理的两个用于Eclipse的TCK –开源到底有什么?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 特斯拉董事长:预计今年在澳大利亚矿产上的
- 下一篇: 昂首阔步:让开发人员喜欢使用您的REST