不知道各位developer平時是否有過疑問,Oracle JDK是什么,OpenJDK又是什么?
Oracle JDK便是平常我們在windows系統上做開發使用的JDK,又稱作SUN JDK。OpenJDK則是大多數linux系統版本自帶的JDK,那它們有什么不同呢?
1. OpenJDK是Oracle JDK的精簡版本
雖然說OpenJDK與Oracle JDK絕大部分相同,但是還是得小心這種情況:本地代碼測試OK,上了sit環境發現各種莫名其妙的問題,這時候需要看下部署sit環境的JDK是不是和本地一致了。其次OpenJDK是不包含部署功能的,比如:Browser Plugin、Java Web Start、以及Java控制面板。
2. 授權協議不同
OpenJDK采用GPL V2協議, SUN JDK則采用JRL。說白了,使用OpenJDK就不要想使用JAVA商標了。
3. 版本對比
OpenJDK的特點是更新頻繁,實現快速迭代和高效試錯,為Oracle JDK LTS版本打下基礎。Oracle JDK的特點是單版本長期支持,提供穩定可用的商業版本,商用收費,學習研究免費。
最后看下國外友人如何看待OpenJDK與Oracle JDK。此處摘自stackoverflow上的回答。
對JAVA編程語言本身來講,OpenJDK與OracleJDK的划分或許是一件好事。商業化能讓JAVA走的更高更遠,同時也不失去開源精神。