OpenJDK和SunJDK的区别和联系

最近,需要在一个Linux新机器上部署项目WEB系统,大家都知道,第一步肯定是安装SunJDK,而在安装SunJDK之前,需要先卸载Linux系统内置的OpenJDK,这里,我们不禁想,为什么这样操作?都是JDK,为什么要替换?

1. 什么是OpenJDK?
OpenJDK,顾名思义,“开放的JDK”,它是JDK的开放原始码版本。在2006年11月3日的JavaOne大会上(2006年12月11日,JDK 1.6发布),Sun公司宣布最终会将Java开源,并在随后的一年多时间里,陆续将JDK的各个部分在GPL v2(GNU General Public License v2)协议下公开了源码,并建立了OpenJDK组织对这些源码进行独立管理。
在JDK1.7的时候,OpenJDK已经作为JDK1.7的主干开发,SunJDK1.7是在OpenJDK7的基础上发布的,其大部分原始码都相同,只有少部分原始码被替换掉,并且使用JRL(Java Research License,Java研究授权协议)发布。

2. JDK和OpenJDK的区别有哪些?
(1)授权协议的不同:OpenJDK采用GPL V2协议,而SunJDK采用JRL协议。两者协议都是开放源代码的,但是,GPL V2协议允许在商业上使用,而JRL协议只允许个人研究使用。
(2)OpenJDK源代码不完整:因为在采用GPL协议的OpenJDK中,SunJDK的一部分源代码因为产权的问题无法开放给OpenJDK使用(如JMX中的可选元件SNMP部分的代码)。
(3)部分源代码用开源代码替换:由于产权的问题,很多产权不是SunJDK的源代码被替换成一些功能相同的开源代码,比如说字体栅格化引擎,使用Free Type代替。
(4)OpenIDK只包含最精简的JDK:OpenJDK采用分离模式,不包含其他的软件包,只包含最精简的JDK

3. 写在最后
因为,Oracle收购了Sun公司,Java商标从此正式归Oracle所有(Java语言本身并不属于哪间公司所有,它由JCP组织进行管理。尽管JCP主要是由Sun公司或者说Oracle公司所领导的),SunJDK的源代码没有完全开源。所以,所有Java社区希望未来Oracle能够让JCP更自由开放一些。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值