一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OpenJDK和Oracle JDK的一些區(qū)別

汽車玩家 ? 來(lái)源:今日頭條 ? 作者:胖虎讀書(shū) ? 2020-04-12 19:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

OpenJDK是Sun在2006年末把Java開(kāi)源而形成的項(xiàng)目,這里的“開(kāi)源”是通常意義上的源碼開(kāi)放形式,即源碼是可被復(fù)用的,例如IcedTea、UltraViolet都是從OpenJDK源碼衍生出的發(fā)行版。

Oracle JDK采用了商業(yè)實(shí)現(xiàn),而OpenJDK使用的是開(kāi)源的FreeType。

當(dāng)然,“相同”是建立在兩者共有的組件基礎(chǔ)上的,Oracle JDK中還會(huì)存在一些Open JDK沒(méi)有的、商用閉源的功能。

例如從JRockit移植改造而來(lái)的Java Flight Recorder,預(yù)計(jì)以后JRockit的MissionControl移植到HotSpot之后,也會(huì)以O(shè)racle JDK專有、閉源的形式提供。

Oracle的項(xiàng)目發(fā)布經(jīng)理Joe Darcy在OSCON 2011上對(duì)兩者關(guān)系的介紹也證實(shí)了OpenJDK 7和Oracle JDK 7在程序上是非常接近的,兩者共用了大量相同的代碼.。

如下圖,注意圖中提示了兩者共同代碼的占比要遠(yuǎn)高于圖形上看到的比例,所以我們編譯的OpenJDK,基本上可以認(rèn)為性能、功能和執(zhí)行邏輯上都和官方的Oracle JDK是一致的。

OpenJDK和Oracle JDK的一些區(qū)別

在大多數(shù)Linux發(fā)行版本里,內(nèi)置或者通過(guò)軟件源安裝的JDK,都是安裝的OpenJDK。

什么是OpenJDK?

歷史上的原因是,OpenJDK是JDK的開(kāi)放源碼版本,以GPL協(xié)議的形式發(fā)布。

開(kāi)源協(xié)議參考: 軟件開(kāi)發(fā)中的開(kāi)源協(xié)議詳解

在JDK7的時(shí)候,OpenJDK已經(jīng)成為JDK7的主干開(kāi)發(fā)版,SUN JDK7是在OpenJDK7的 基礎(chǔ)上發(fā)布的,其大部分源碼都相同,只有少部分源碼被替換掉。 使用JRL(Java Research License,Java研究授權(quán)協(xié)議)發(fā)布。

至于OpenJDK6則更是有其復(fù)雜的一面,首先是OpenJDK6是JDK7的一個(gè)分支,并且盡量去除Java SE7的新特性,使其盡量的符合Java6的標(biāo)準(zhǔn)。

JDK和OpenJDK的區(qū)別

1.授權(quán)協(xié)議的不同

OpenJDK采用GPL V2協(xié)議發(fā)布,而JDK則采用JRL協(xié)議發(fā)布。兩個(gè)協(xié)議雖然都是開(kāi)放源代碼的,但是在使用上的不同在于GPL V2允許在商業(yè)上使用, 而JRL只允許個(gè)人研究使用。

2.OpenJDK只包含最精簡(jiǎn)的JDK

OpenJDK不包含其他的軟件包,比如Rhino Java DB JAXP……,并且可以分離的軟件包也都是盡量的分離,但是這大多數(shù)都是自由軟件,你可以自己下載加入。

3.OpenJDK源代碼不完整

這個(gè)很容易想到,在采用GPL協(xié)議的OpenJDK中,SUN JDK的一部分源代碼因?yàn)楫a(chǎn)權(quán)的問(wèn)題無(wú)法開(kāi)放OpenJDK使用,其中最主要的部分就是JMX中的可選元件SNMP部分的代碼。

因此這些不能開(kāi)放的源代碼將它作成plug,以供OpenJDK編譯時(shí)使用,你也可以選擇不要使用plug。

而Icedtea則為這些不完整的部分開(kāi)發(fā)了相同功能的源代碼(OpenJDK6),促使OpenJDK更加完整。

4.OpenJDK和IcedTea的關(guān)系

IcedTea項(xiàng)目最初是由于OpenJDK不完整(因產(chǎn)權(quán) 而造成的障礙)而創(chuàng)立的,社區(qū)需要一個(gè)完整的開(kāi)源工具鏈及代碼庫(kù)。

IcedTea長(zhǎng)期以來(lái)一直是OpenJDK的一套補(bǔ)丁,正如剛才我所說(shuō)到的,它有一個(gè) 基于“./configure”的不同的構(gòu)建系統(tǒng)。

在OpenJDK中,我們已經(jīng)替換了產(chǎn)權(quán)代碼(encumbered code),因此不再有障礙了。 正因?yàn)槲覀兊呐?,IcedTea項(xiàng)目已經(jīng)減少了使用補(bǔ)丁的數(shù)量。

IcedTea中看上去不錯(cuò)的一點(diǎn)是,它的 configure腳本使得在多種不同的模式下構(gòu)建OpenJDK變得很容易,比如使用Zero Assembler Port在非x86/sparc芯片上來(lái)支持編譯等等。

IcedTea提供的一大塊內(nèi)容是plugin/java-web-start基礎(chǔ)架構(gòu)。

5.部分源代碼用開(kāi)源代碼替換

由于產(chǎn)權(quán)的問(wèn)題,很多是SUN JDK的源代碼被替換成一些功能相同的開(kāi)源代碼,比如說(shuō)字體柵格化引擎,使用Free Type代替。

6.不能使用Java商標(biāo)

這個(gè)很容易理解,在安裝OpenJDK的機(jī)器上,輸入“java -version”顯示的是OpenJDK。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • JAVA
    +關(guān)注

    關(guān)注

    20

    文章

    2987

    瀏覽量

    108195
  • JDK
    JDK
    +關(guān)注

    關(guān)注

    0

    文章

    83

    瀏覽量

    16851
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    JDK從8升級(jí)到21的問(wèn)題集

    、背景與挑戰(zhàn) 1. 升級(jí)動(dòng)因 ?Oracle長(zhǎng)期支持策略 ?現(xiàn)代特性需求:協(xié)程、模式匹配、ZGC等 ?安全性與性能的需求 ?AI新技術(shù)引入的版本要求 2. 項(xiàng)目情況 ?100+項(xiàng)目并行升級(jí)
    的頭像 發(fā)表于 06-06 16:49 ?183次閱讀

    oracle數(shù)據(jù)恢復(fù)—oracle數(shù)據(jù)庫(kù)誤執(zhí)行錯(cuò)誤truncate命令如何恢復(fù)數(shù)據(jù)?

    oracle數(shù)據(jù)庫(kù)誤執(zhí)行truncate命令導(dǎo)致數(shù)據(jù)丟失是種常見(jiàn)情況。通常情況下,oracle數(shù)據(jù)庫(kù)誤操作刪除數(shù)據(jù)只需要通過(guò)備份恢復(fù)數(shù)據(jù)即可。也會(huì)碰到一些特殊情況,例如數(shù)據(jù)庫(kù)備份無(wú)法
    的頭像 發(fā)表于 06-05 16:01 ?270次閱讀
    <b class='flag-5'>oracle</b>數(shù)據(jù)恢復(fù)—<b class='flag-5'>oracle</b>數(shù)據(jù)庫(kù)誤執(zhí)行錯(cuò)誤truncate命令如何恢復(fù)數(shù)據(jù)?

    Debian和Ubuntu哪個(gè)好一些?

    兼容性對(duì)比Debian和Ubuntu哪個(gè)好一些,并為您揭示如何通過(guò)RAKsmart服務(wù)器釋放Linux系統(tǒng)的最大潛能。
    的頭像 發(fā)表于 05-07 10:58 ?283次閱讀

    樹(shù)莓派在自動(dòng)化控制項(xiàng)目中的一些潛在應(yīng)用

    自動(dòng)化控制項(xiàng)目中的一些潛在應(yīng)用。之前,我們已經(jīng)為Arduino平臺(tái)探討了相同的話題。我們確定Arduino是個(gè)出色的教育工具,但由于一些限制,它無(wú)法在工業(yè)環(huán)境中完全
    的頭像 發(fā)表于 03-25 09:45 ?186次閱讀
    樹(shù)莓派在自動(dòng)化控制項(xiàng)目中的<b class='flag-5'>一些</b>潛在應(yīng)用

    適用于Oracle的SSIS數(shù)據(jù)流組件:提供快速導(dǎo)入及導(dǎo)出功能

    包括優(yōu)化的 Oracle Source、Oracle Destination 和 Oracle Lookup 組件,以及提供系列 Oracle
    的頭像 發(fā)表于 01-15 10:51 ?764次閱讀
    適用于<b class='flag-5'>Oracle</b>的SSIS數(shù)據(jù)流組件:提供快速導(dǎo)入及導(dǎo)出功能

    適用于Oracle的Devart Excel插件:輕松管理數(shù)據(jù)

    工作簿中的數(shù)據(jù),編輯這些數(shù)據(jù)并將其保存回 Oracle。它使您能夠像使用 Excel 工作表樣處理 Oracle 數(shù)據(jù),可以輕松進(jìn)行數(shù)據(jù)清理和重復(fù)數(shù)據(jù)刪除的工作,并將 Excel 的所有強(qiáng)大
    的頭像 發(fā)表于 01-14 11:11 ?473次閱讀
    適用于<b class='flag-5'>Oracle</b>的Devart Excel插件:輕松管理數(shù)據(jù)

    AN29-關(guān)于DC-DC轉(zhuǎn)換器的一些想法

    電子發(fā)燒友網(wǎng)站提供《AN29-關(guān)于DC-DC轉(zhuǎn)換器的一些想法.pdf》資料免費(fèi)下載
    發(fā)表于 01-08 13:57 ?0次下載
    AN29-關(guān)于DC-DC轉(zhuǎn)換器的<b class='flag-5'>一些</b>想法

    云服務(wù)器還是服務(wù)器好用一些

    云服務(wù)器還是服務(wù)器好用一些?云服務(wù)器與服務(wù)器各有優(yōu)勢(shì)。服務(wù)器作為獨(dú)立物理設(shè)備,適合需高性能、物理控制和安全性高的場(chǎng)景;而云服務(wù)器基于云計(jì)算技術(shù),提供靈活資源分配、按需付費(fèi)、便捷管理和豐富服務(wù),更適合需快速響應(yīng)、大規(guī)模數(shù)據(jù)處理和低成本運(yùn)維的場(chǎng)景。以下是UU云小編對(duì)兩者的區(qū)別
    的頭像 發(fā)表于 12-26 10:08 ?481次閱讀

    一些常見(jiàn)的動(dòng)態(tài)電路

    無(wú)論是模電還是數(shù)電,理論知識(shí)相對(duì)來(lái)說(shuō)還是比較枯燥,各種電路原理理解清楚不算容易,換種生動(dòng)形象的方式或許會(huì)增加一些趣味性,也更容易理解這些知識(shí)。下面整理了一些常見(jiàn)的電路,以動(dòng)態(tài)圖形的方式展示。 整流
    的頭像 發(fā)表于 11-16 09:26 ?1038次閱讀
    <b class='flag-5'>一些</b>常見(jiàn)的動(dòng)態(tài)電路

    分享一些常見(jiàn)的電路

    理解模電和數(shù)電的電路原理對(duì)于初學(xué)者來(lái)說(shuō)可能比較困難,但通過(guò)一些生動(dòng)的教學(xué)方法和資源,可以有效地提高學(xué)習(xí)興趣和理解能力。 下面整理了一些常見(jiàn)的電路,以動(dòng)態(tài)圖形的方式展示。 整流電路 單相橋式整流
    的頭像 發(fā)表于 11-13 09:28 ?784次閱讀
    分享<b class='flag-5'>一些</b>常見(jiàn)的電路

    Oracle數(shù)據(jù)恢復(fù)—異常斷電后Oracle數(shù)據(jù)庫(kù)啟庫(kù)報(bào)錯(cuò)的數(shù)據(jù)恢復(fù)案例

    Oracle數(shù)據(jù)庫(kù)故障: 機(jī)房異常斷電后,Oracle數(shù)據(jù)庫(kù)啟庫(kù)報(bào)錯(cuò):“system01.dbf需要更多的恢復(fù)來(lái)保持致性,數(shù)據(jù)庫(kù)無(wú)法打開(kāi)”。數(shù)據(jù)庫(kù)沒(méi)有備份,歸檔日志不連續(xù)。用戶方提供了
    的頭像 發(fā)表于 09-30 13:31 ?687次閱讀
    <b class='flag-5'>Oracle</b>數(shù)據(jù)恢復(fù)—異常斷電后<b class='flag-5'>Oracle</b>數(shù)據(jù)庫(kù)啟庫(kù)報(bào)錯(cuò)的數(shù)據(jù)恢復(fù)案例

    LED驅(qū)動(dòng)器應(yīng)用的一些指南和技巧

    電子發(fā)燒友網(wǎng)站提供《LED驅(qū)動(dòng)器應(yīng)用的一些指南和技巧.pdf》資料免費(fèi)下載
    發(fā)表于 09-25 11:35 ?0次下載
    LED驅(qū)動(dòng)器應(yīng)用的<b class='flag-5'>一些</b>指南和技巧

    Oracle數(shù)據(jù)恢復(fù)—Oracle數(shù)據(jù)庫(kù)delete刪除的數(shù)據(jù)恢復(fù)方法

    刪除Oracle數(shù)據(jù)庫(kù)數(shù)據(jù)般有以下2種方式:delete、drop或truncate。下面針對(duì)這2種刪除oracle數(shù)據(jù)庫(kù)數(shù)據(jù)的方式探討ora
    的頭像 發(fā)表于 09-11 11:45 ?659次閱讀

    Oracle數(shù)據(jù)恢復(fù)—Oracle刪除數(shù)據(jù)不用怕!這些數(shù)據(jù)恢復(fù)方法了解

    相信有很多oracle數(shù)據(jù)庫(kù)用戶都遇到過(guò)在操作Oracle數(shù)據(jù)庫(kù)時(shí)誤刪除某些重要數(shù)據(jù)的情況,這個(gè)時(shí)候如果數(shù)據(jù)庫(kù)沒(méi)有備份且數(shù)據(jù)十分重要的,怎么才能恢復(fù)誤刪除的數(shù)據(jù)呢?北亞企安數(shù)據(jù)恢復(fù)工程師下面簡(jiǎn)單介紹幾個(gè)誤刪除Oracle數(shù)據(jù)庫(kù)數(shù)
    的頭像 發(fā)表于 07-19 16:40 ?846次閱讀

    咨詢一些關(guān)于LED燈具的問(wèn)題

    各位大佬,咨詢一些關(guān)于LED燈具的問(wèn)題 120W的吸頂燈,用的非隔離式電源,用不到1年,燈具就會(huì)閃爍、頻閃或不亮,主要是什么原因造成的?是不是驅(qū)動(dòng)芯片太差?
    發(fā)表于 07-02 22:33