ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Java11时代Oracle JDK与Open JDK区别

2020-06-01 09:54:11  阅读:293  来源: 互联网

标签:Java JDK OpenJDK 使用 Oracle Java11 源代码


一、Java11时代

  Java 的版本发布周期变更为每六个月一次 , 每半年发布一个大版本,每个季度发布一个中间特性版本,Java 9 和 Java 10 这两个被称为“功能性的版本”,两者均只提供半年的技术支持,Java 11 不仅提供了长期支持服务,还将作为 Java 平台的参考实现。Oracle 直到2023年9月都会为 Java 11 提供技术支持,而补丁和安全警告等扩展支持将持续到2026年。所以,Java11 必将是下一代长期使用的版本。

二、Open JDK  

  在Java历史上,openjdk是jdk的开放原始码版本,以GPL协议的形式放出。在JDK7的时候,openjdk已经成为jdk7的主干开发,sun jdk7是在openjdk7的基础上发布的,其大部分原始码都相同,只有少部分原始码被替换掉。使用JRL(JavaResearch License,Java研究授权协议)发布。

三、Java11时代,Oracle JDK与Open JDK

1、授权协议的不同: openjdk采用GPL V2协议放出,而JDK则采用JRL放出。两者协议虽然都是开放源代码的,但是在使用上的不同在于GPL V2允许在商业上使用,而JRL只允许个人研究使用。 Oracle JDK源代码包括“ORACLE PROPRIETARY / CONFIDENTIAL。使用受许可条款约束。

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

3、openjdk只包含最精简的JDK:Oracle JDK提供“JDK”和“JRE”, OpenJDK仅提供 ”JDK“。Oracle JDK提供“安装程序”(msi,rpm,deb等),将JDK二进制文件放在系统中,还包含更新规则,在某些情况下还处理一些常见配置,如设置公共环境变量(例如,JAVA_HOME in Windows)并建立文件关联(例如,使用java来启动.jar文件)。 OpenJDK仅作为压缩存档(tar.gz或.zip)提供。 OpenJDK不包含其他的软件包,比如Rhino Java DB JAXP……,并且可以分离的软件包也都是尽量的分离,但是这大多数都是自由软件,你可以自己下载加入。 

4、OpenJDK源代码不完整:Oracle JDK二进制文件包括未添加到OpenJDK二进制文件的API,如javafx,资源管理和(JDK 11之前的更改)JFR API。在采用GPL协议的Openjdk中,sun jdk的一部分源代码因为产权的问题无法开放openjdk使用,其中最主要的部份就是JMX中的可选元件SNMP部份的代码。因此这些不能开放的源代码将它作成plug,以供OpenJDK编译时使用,你也可以选择不要使用plug。而Icedtea则为这些不完整的部分开发了相同功能的源代码(OpenJDK6),促使OpenJDK更加完整。 

5、部分源代码用开源代码替换: 由于产权的问题,很多产权不是SUN的源代码被替换成一些功能相同的开源代码,比如说字体栅格化引擎,使用Free Type代替。 

6、OpenJDK不支持启动参数:如果使用-XX:+ UnlockCommercialFeatures标志,OpenJDK将(继续)抛出错误并停止。 Oracle JDK不再需要该标志,并将打印警告,但如果使用则继续执行。

7、不能使用Java商标:Oracle JDK有Java杯和蒸汽图标,OpenJDK有Duke图标。java -version的输出会有所不同。 Oracle JDK包含LTS。 OpenJDK(由Oracle生成)不包括Oracle特定的LTS标识符。

标签:Java,JDK,OpenJDK,使用,Oracle,Java11,源代码
来源: https://www.cnblogs.com/guanghe/p/13023565.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有