關於OpenJDK和Orcale JDK區別


一、環境Centos

今天搞tomcat發現了一個問題,眾所周知,tomcat需要java環境支持,然后我今天就想着嘗試yum安裝java,命令 yum install -y java* 確實可以安裝上,但是安裝的是 openjdk,也會面臨一個問題,沒有jar命令,war打包的命令

如圖

然而我們一般生產線上使用的是Oracle的java,因為這樣配置的java環境更全,功能會更多

如圖

二、兩個版本不同之處

授權協議的不同

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

OpenJDK不包含Deployment(部署)功能:部署的功能包括:Browser Plugin、Java Web Start、以及Java控制面板,這些功能在OpenJDK中是找不到的。

OpenJDK源代碼不完整:

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

Openjdk精簡化

OpenJDK只包含最精簡的JDK:OpenJDK不包含其他的軟件包,比如Rhino Java DB JAXP……,並且可以分離的軟件包也都是盡量的分離,但是這大多數都是自由軟件,你可以自己下載加入。 這可能導致yum安裝的java環境沒有jar命令

版本顯示

OpenJDK不能使用Java商標,這個很容易理解,在安裝OpenJDK的機器上,輸入“java -version”顯示的是OpenJDK,

但是如果是使用Oracle安裝的java,顯示的是java


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM