在4月16日開始的具有里程碑意義的IT 法院案件中,一名聯(lián)邦法官于5月31日裁定Google在構(gòu)建Android移動(dòng)設(shè)備操作系統(tǒng)中使用的Java應(yīng)用程序編程接口不受版權(quán)保護(hù)。甲骨文公司是該案的原告,Java編程語言的維護(hù)者以及其開源社區(qū)的組織者,它表示將“大力”上訴。(請(qǐng)參閱本文結(jié)尾處的官方聲明。)該公司已要求賠償近10億美元,并要求Google禁止使用Android OS。
法官威廉·阿爾蘇普(William Alsup)在5月31日向加利福尼亞州北區(qū)美國(guó)地方法院提交的一項(xiàng)命令中寫道:“該命令并不意味著Java API軟件包免費(fèi)提供給所有人使用?!?/p>
“并不是說所有計(jì)算機(jī)程序的結(jié)構(gòu),順序和組織都可能被盜。而是根據(jù)本案的具體事實(shí),根據(jù)《版權(quán)法》,谷歌復(fù)制的特定元素免費(fèi)供所有人使用。 ”
由于API包含技術(shù),并且由于定義上的技術(shù)不具有版權(quán),因此該決定對(duì)于許多IT專業(yè)人員而言并不感到意外。但是甲骨文決心要證明谷歌對(duì)開源Java及其API的使用超出了合理使用范圍。
最后,法院裁定Google僅從Java復(fù)制了9行代碼到Android,并且這些API是不可復(fù)制的。
在構(gòu)建流行的Android OS并使用自己的技術(shù)時(shí),Google部署了Java API來創(chuàng)建自己的Java(或“ forked”)Java版本,該Java代碼用于通過Internet一次激活和運(yùn)行許多設(shè)備上的應(yīng)用程序。由于Google開發(fā)人員對(duì)自己的Java版本進(jìn)行了自定義編碼,以便在自己的系統(tǒng)內(nèi)私有使用,因此Java社區(qū)未批準(zhǔn)Android版本的Java,因此沒有資格獲得Oracle Java維護(hù)者的更新和支持。
Google爭(zhēng)辯,并且Alsup同意,因?yàn)樗褂脴?biāo)準(zhǔn)的,不可復(fù)制的API創(chuàng)建了自己的Java版本,因此不需要Oracle的許可。
該案的關(guān)鍵見證人之一是前Sun Microsystems首席執(zhí)行官Jonathan Schwartz (如圖)。在作證時(shí),施瓦茲(Schwartz)與前任老板,Sun的聯(lián)合創(chuàng)始人兼前首席執(zhí)行官斯科特·麥克尼利(Scott McNealy)背道而馳,他說,只要公司不聲稱自己兼容Java并使用Java徽標(biāo),就可以使用Java而無需購(gòu)買許可證。Android不主張使用所謂的“純Java”。
Java用戶必須訂閱Java要求的開放標(biāo)準(zhǔn)。在作證時(shí),Schwartz被問到:“您在Sun任職期間是否曾經(jīng)有一段時(shí)間將Java API視為專有或受保護(hù)的?” 他的回答是:“不會(huì)。就任何人提出這一主張而言,我們都會(huì)努力說,'不,那是不正確的。' 我們認(rèn)為他們[Google]沒做錯(cuò)任何事情?!?/p>
分叉放棄“純Java”
當(dāng)為特定目的而更改Java時(shí),它將放棄標(biāo)簽“ Pure Java”,并被Oracle的Java專營(yíng)權(quán)所放棄。沒有支持,沒有更新,什么都沒有????您是一個(gè)人。但是它仍然是Java,它可以在Internet上傳遞代碼,并且大部分時(shí)間都能完成工作。
這就是90年代初期的全部想法,當(dāng)時(shí)James Gosling博士和他的Sun Microsystems開發(fā)人員團(tuán)隊(duì)創(chuàng)建了如今無處不在的編程語言。戈斯林和他的幫派將Java設(shè)計(jì)為將他所謂的“大塊頭”服務(wù)器連接到臺(tái)式機(jī),汽車,移動(dòng)設(shè)備,電視,電視以及任何可連接Internet的設(shè)備的關(guān)鍵鏈接。
當(dāng)Sun在2006年向開放源代碼社區(qū)發(fā)布Java時(shí),這不僅是對(duì)世界的禮物,也是對(duì)Java在11年中已經(jīng)被復(fù)制和分叉的事實(shí)的致敬。
Java在Internet上無處不在,在各處移動(dòng)代碼并激活應(yīng)用程序,以至于它已成為基礎(chǔ)結(jié)構(gòu)不可或缺的一部分,例如XML或TCP / IP。它就在那兒,它可以正常工作,并且晝夜不停地工作。
Java很容易理解,而Oracle知道。它只是在試圖保護(hù)它所擁有的東西,但是精靈已經(jīng)被淘汰了。在開源和API方面,很難證明對(duì)競(jìng)爭(zhēng)對(duì)手的過失。