最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

openjdk與Oraclejdk的區(qū)別

 更新時間:2020年08月19日 08:35:53   作者:程序員自由之路  
這篇文章主要介紹了openjdk與Oraclejdk的區(qū)別,幫助大家更好的了解JAVA,感興趣的朋友可以了解下

在2006年11月13日的JavaOne大會上,Sun公司(當時還沒被收購)宣布計劃要把Java開源,在隨后的一年多時間內,它陸續(xù)地將JDK的各個部分在GPL v2(GNU General Public License v2)協議下公開了源碼,并建立了OpenJDK組織對這些源碼進行獨立管理。除了極少量的產權代碼(Encumbered Code,這部分代碼所有權不屬于Sun公司,Sun本身也無權進行開源處理)外,OpenJDK幾乎擁有了當時SunJDK 的全部代碼。

OpenJDK的質量主管曾經表示在JDK 7中,SunJDK和OpenJDK除了代碼文件頭的版權注釋之外,代碼幾乎是完全一樣的,所以OpenJDK 7與SunJDK 7本質上就是同一套代碼庫出來的產品。

總結下來,OpenJDK和OracleJDK存在以下方面的區(qū)別:

授權協議不同

OpenJDK 采用GPL V2協議放出,而OracleJDK則采用JRL放出。兩者協議雖然都是開放源代碼的,但是在使用上的不同在于GPL V2允許在商業(yè)上使用,而JRL只允許個人研究使用。

OpenJDK不包含OracleJDK中的部分產權代碼

由于OracleJDK中的部分代碼的產權也不是歸Oracle所有的,所以這部分代碼就沒開源到OpenJDK中。但是很多“好心”的開源愛好者在OpenJDK中實現了相同的功能,并將源代碼開源到OpenJDK中。比如說字體柵格化引擎,使用Free Type代替。

不能使用Java商標

在Sun被Oracle收購以后,Java這個商標就歸Oracle所有了。不僅OpenJDK不能使用java商標,J2EE這個曾經Sun的親兒子命運也同樣坎坷,已經被Oracle無情拋棄,同樣
不能在使用Java商標。

但是隨著JDK版本的不斷發(fā)布,Oracle失去了維護OpenJDK的耐心,因為不賺錢啊。RedHat從Oracle手上接過OpenJDK的管理權利和維護職責。

2019年3月20日,JDK 12發(fā)布,只包含8個JEP,其中主要有Switch表達式、Java微測試套件(JMH)等新功能,最引人注目的特性無疑是加入了由RedHat領導開發(fā)的Shen-andoah垃圾收集器。Shenandoah作為首個由非Oracle開發(fā)的垃圾收集器,其目標又與Oracle在JDK 11中發(fā)布的ZGC幾乎完全一致,兩者天生就存在競爭。Oracle馬上用實際行動抵制了這個新收集器,在JDK 11發(fā)布時才說應盡可能保證OracleJDK和OpenJDK的兼容一致,轉眼就在OracleJDK 12里把Shenandoah的代碼通過條件編譯強行剔除掉,使其成為歷史上唯一進入了OpenJDK發(fā)布清單,但在OracleJDK中無法使用的功能。

所以對于高版本的OpenJDK和OracleJDK之間,也存在OpenJDK中有的功能,但是OracleJDK中不包含的。

總的來說,對于普通開發(fā),使用OpenJDK和OracleJDK并沒有太大差別,兩者的差別更體現在商業(yè)考量上面。

openjdk源代碼不完整

這個很容易想到,在采用GPL協議的OpenJDK中,SUN JDK的一部分源代碼因為產權的問題無法開放給OpenJDK使用,其中最主要的部份就是JMX中的可選元件SNMP部份的代碼。因此這些不能開放的源代碼 將它作成plug,以供OpenJDK編譯時使用,你也可以選擇不要使用plug。而Icedtea則為這些不完整的部分開發(fā)了相同功能的源代碼 (OpenJDK6),促使OpenJDK更加完整。

總結

其他區(qū)別歡迎各位指出

以上就是openjdk與Oraclejdk的區(qū)別的詳細內容,更多關于openjdk與Oraclejdk的資料請關注腳本之家其它相關文章!

相關文章

  • springboot跨域CORS處理代碼解析

    springboot跨域CORS處理代碼解析

    這篇文章主要介紹了springboot跨域CORS處理代碼解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • Java字節(jié)碼中jvm實例用法

    Java字節(jié)碼中jvm實例用法

    在本篇文章里小編給大家整理的是一篇關于Java字節(jié)碼中jvm實例用法內容,有興趣的朋友們可以學習參考下。
    2021-02-02
  • JAVA 根據身份證計算年齡的實現代碼

    JAVA 根據身份證計算年齡的實現代碼

    這篇文章主要介紹了JAVA 根據身份證計算年齡的實例代碼及java根據出生日期獲得年齡的方法,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧
    2018-05-05
  • Mybatis Generator 獲取不到字段注釋的解決

    Mybatis Generator 獲取不到字段注釋的解決

    這篇文章主要介紹了Mybatis Generator 獲取不到字段注釋的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • java的io操作(將字符串寫入到txt文件中)

    java的io操作(將字符串寫入到txt文件中)

    這篇文章主要介紹了java的io操作示例,將字符串寫入到txt文件中,需要的朋友可以參考下
    2014-04-04
  • Java類加載基本過程詳細介紹

    Java類加載基本過程詳細介紹

    這篇文章主要介紹了Java類加載基本過程詳細介紹的相關資料,需要的朋友可以參考下
    2016-12-12
  • Java 中DateUtils日期工具類的實例詳解

    Java 中DateUtils日期工具類的實例詳解

    這篇文章主要介紹了Java 中DateUtils日期工具類的實例詳解的相關資料,有時候開發(fā)java項目使用日期類型,這里介紹下日期工具類,需要的朋友可以參考下
    2017-08-08
  • 深入探究Java線程的創(chuàng)建與構造方法

    深入探究Java線程的創(chuàng)建與構造方法

    這篇文章主要給大家分享的是java線程的創(chuàng)建以及構造方法,想了解具體方式的小伙伴可以參考下面文章內容,希望對你有所幫助
    2022-04-04
  • Spark?SQL配置及使用教程

    Spark?SQL配置及使用教程

    SparkSQL是spark的一個模塊,主入口是SparkSession,將SQL查詢與Spark程序無縫混合,這篇文章主要介紹了Spark?SQL配置及使用,需要的朋友可以參考下
    2021-12-12
  • Java操作pdf的工具類itext的處理方法

    Java操作pdf的工具類itext的處理方法

    這篇文章主要介紹了Java操作pdf的工具類itext,iText是一種生成PDF報表的Java組件,通過在服務器端使用Jsp或JavaBean生成PDF報表,客戶端采用超鏈接顯示或下載得到生成的報表,需要的朋友可以參考下
    2022-04-04

最新評論

阿坝县| 乡城县| 永和县| 长子县| 陈巴尔虎旗| 扎囊县| 全椒县| 徐水县| 墨脱县| 南通市| 黑龙江省| 垦利县| 息烽县| 桑日县| SHOW| 嘉峪关市| 永济市| 永德县| 清远市| 白银市| 斗六市| 肇庆市| 肃宁县| 房产| 天气| 汉川市| 林甸县| 墨竹工卡县| 泊头市| 濮阳县| 罗城| 青阳县| 改则县| 平泉县| 康保县| 海晏县| 高邑县| 象州县| 波密县| 武冈市| 济南市|