openjdk是sun在2006年末把java开源而形成的项目,这里的“开源”是通常意义上的源码开放形式,即源码是可被复用的,例如icedtea、ultraviolet都是从openjdk源码衍生出的发行版。
oracle jdk采用了商业实现,而openjdk使用的是开源的freetype。
当然,“相同”是建立在两者共有的组件基础上的,oracle jdk中还会存在一些open jdk没有的、商用闭源的功能。
例如从jrockit移植改造而来的java flight recorder,预计以后jrockit的missioncontrol移植到hotspot之后,也会以oracle jdk专有、闭源的形式提供。
oracle的项目发布经理joe darcy在oscon 2011上对两者关系的介绍也证实了openjdk 7和oracle jdk 7在程序上是非常接近的,两者共用了大量相同的代码.。
如下图,注意图中提示了两者共同代码的占比要远高于图形上看到的比例,所以我们编译的openjdk,基本上可以认为性能、功能和执行逻辑上都和官方的oracle jdk是一致的。
在大多数linux发行版本里,内置或者通过软件源安装的jdk,都是安装的openjdk。
什么是openjdk?
历史上的原因是,openjdk是jdk的开放源码版本,以gpl协议的形式发布。
开源协议参考: 软件开发中的开源协议详解
在jdk7的时候,openjdk已经成为jdk7的主干开发版,sun jdk7是在openjdk7的 基础上发布的,其大部分源码都相同,只有少部分源码被替换掉。 使用jrl(java research license,java研究授权协议)发布。
至于openjdk6则更是有其复杂的一面,首先是openjdk6是jdk7的一个分支,并且尽量去除java se7的新特性,使其尽量的符合java6的标准。
jdk和openjdk的区别
1.授权协议的不同
openjdk采用gpl v2协议发布,而jdk则采用jrl协议发布。两个协议虽然都是开放源代码的,但是在使用上的不同在于gpl v2允许在商业上使用, 而jrl只允许个人研究使用。
2.openjdk只包含最精简的jdk
openjdk不包含其他的软件包,比如rhino java db jaxp……,并且可以分离的软件包也都是尽量的分离,但是这大多数都是自由软件,你可以自己下载加入。
3.openjdk源代码不完整
这个很容易想到,在采用gpl协议的openjdk中,sun jdk的一部分源代码因为产权的问题无法开放openjdk使用,其中最主要的部分就是jmx中的可选元件snmp部分的代码。
因此这些不能开放的源代码将它作成plug,以供openjdk编译时使用,你也可以选择不要使用plug。
而icedtea则为这些不完整的部分开发了相同功能的源代码(openjdk6),促使openjdk更加完整。
4.openjdk和icedtea的关系
icedtea项目最初是由于openjdk不完整(因产权 而造成的障碍)而创立的,社区需要一个完整的开源工具链及代码库。
icedtea长期以来一直是openjdk的一套补丁,正如刚才我所说到的,它有一个 基于“./configure”的不同的构建系统。
在openjdk中,我们已经替换了产权代码(encumbered code),因此不再有障碍了。 正因为我们的努力,icedtea项目已经减少了使用补丁的数量。
icedtea中看上去不错的一点是,它的 configure脚本使得在多种不同的模式下构建openjdk变得很容易,比如使用zero assembler port在非x86/sparc芯片上来支持编译等等。
icedtea提供的一大块内容是plugin/java-web-start基础架构。
5.部分源代码用开源代码替换
由于产权的问题,很多是sun jdk的源代码被替换成一些功能相同的开源代码,比如说字体栅格化引擎,使用free type代替。
6.不能使用java商标
这个很容易理解,在安装openjdk的机器上,输入“java -version”显示的是openjdk。
长电科技加速扩充中大功率器件成品制造产能,面向第三代半导体市场解决方案营收有望大幅增长
5G融媒体如何升级?MAXHUB驱动媒体产业智能转型
如何挑选一台防爆恒温恒湿试验箱
自制BFO金属探测器图解
单片机是如何构成的 电器设备使用单片机的内部原理
OpenJDK和Oracle JDK的一些区别
运放的内部噪声源及优化解决方案
丰田有意通过增加产能的方式 来促进旗下新能源车型的发展
2020年成为PC出货量增长最强劲的一年
超材料在高性能小型化天线中的应用解析
不再坚守1999, 两千多的小米6你还会支持吗?
要学会理解夜景照明在项目中的地位
华为Mate10发布时间几乎确定:10月16日7000元起
配备高速闪存技术 超薄MacBook Pro发布前瞻
测厚仪的可测量范围是多少,它的优点有哪些
Annapolis Micro Systems公司推出两款符合OpenVPX 6U技术规范FPGA板卡
关于交流耦合和直流恢复知识解析
中国将面临发展存储器的历史性机遇
物联网给我们的生活带来了翻天覆地的变化
博通高管履新LitePoint中国区GM,关注IOT市场