​不知道各位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走的更高更远,同时也不失去开源精神。

Oracle JDK与OpenJDK到底有什么不同?的更多相关文章

  1. 你安装的是SUN/Oracle JDK还是OpenJDK?

    目录 1 如何查看你安装的JDK版本 1.1 要用到的命令行工具 1.2 查看JDK的版本 2 什么是 OpenJDK 2.1 OpenJDK 的来历 2.2 Oracle JDK的来历 3 Orac ...

  2. [转帖]SUN/Oracle JDK还是OpenJDK?

    你安装的是 https://www.cnblogs.com/shoufeng/p/9719995.html 目录 1 如何查看你安装的JDK版本 1.1 要用到的命令行工具 1.2 查看JDK的版本 ...

  3. Oracle JDK vs OpenJDK

    OpenJDK是Sun在2006年末把Java开源而形成的项目,这里的“开源”是通常意义上的源码开放形式,即源码是可被复用的,例如IcedTea.UltraViolet都是从OpenJDK源码衍生出的 ...

  4. oracle jdk和openjdk区别;idea如何加载jdk源码并调试jdk代码

    两个jdk的区别 oracle jdk是sun/oracle(甲骨文)公司的,部分jdk开源:相对比较稳定,使用的比较多. openjdk是完全开源的,据说是官方oracle唯一承认的开源版本. id ...

  5. Linux安装Oracle JDK替换OpenJDK详解

    转自http://www.lsychina.com/howto_install_oracle-jdk_replace_openjdk_on_linux.html 众所周知,由于Oracle公司的JDK ...

  6. centos7 安装oracle jdk 与openjdk 实现切换

    1. 分别安装oraclejdk 与openjdk #下载安装oraclejdk rpm -ivh --prefix=/usr.java/java1.8 ***.rpm #安装openjdk su - ...

  7. 将Linux默认的OpenJDK替换为Oracle JDK

    在使用Logstash安装插件的时候,发生了一个错误,如下: ERROR: Something went wrong when installing logstash-input-jdbc, mess ...

  8. [转帖] 部分收费的Oracle JDK VS 完全免费的OpenJDK

    来源: http://www.flammulina.com/2018/10/28/%E9%83%A8%E5%88%86%E6%94%B6%E8%B4%B9%E7%9A%84oracle-jdk-vs- ...

  9. Fedora Server 21下OpenJdk和Oracle Jdk共存

    最新文章:Virson's Blog 参考文章:博客园-三维蚂蚁 Linux公社 1.首先需要下载对应平台的Jdk:Oracle 官网 2.使用yum或rpm命令安装Jdk: yum install ...

随机推荐

  1. SYN6107型 GPS北斗双模子钟

    SYN6107型 GPS北斗双模子钟 产品概述 SYN6107型GPS北斗双模子钟是由西安同步电子科技有限公司精心设计.自行研发生产的一套以接收北斗卫星信号的子钟,从北斗地球同步卫星上获取标准时钟信号 ...

  2. SpringBoot从入门到精通二(SpringBoot整合myBatis的两种方式)

    前言 通过上一章的学习,我们已经对SpringBoot有简单的入门,接下来我们深入学习一下SpringBoot,我们知道任何一个网站的数据大多数都是动态的,也就是说数据是从数据库提取出来的,而非静态数 ...

  3. 从0到1构建网易云信IM私有化

    本文来源于MOT技术管理课堂杭州站演讲实录,全文 2410 字,阅读约需 5分钟.网易云信资深研发工程师张翱从私有化面临的问题及需求说起,分享了网易云信IM私有化的解决方案和具体实践. 想要阅读更多技 ...

  4. Java学习笔记——String类型转换

    一滴水里观沧海,一粒沙中看世界 ——一带一路欢迎宴致辞 上代码: package cn.stringtoobj; public class TypeConversion { public static ...

  5. 使用 cxf的程序 在win10 测试部署时报空指针异常

    2018-11-08 15:50:55.072 DEBUG 21524 --- [nio-8080-exec-1] o.s.b.w.s.f.OrderedRequestContextFilter  : ...

  6. 为什么Java只有值传递?

    形参和实参 形式参数,是在方法定义阶段,是定义某个函数时使用的参数,用于接收实参传入.例f(x,y)中x和y是形参. 实际参数,是在方法调用阶段,是主调函数调用有参函数时,实际传递的内容.例f(3,7 ...

  7. 并发编程之美,带你深入理解java多线程原理

    1.什么是多线程? 多线程是为了使得多个线程并行的工作以完成多项任务,以提高系统的效率.线程是在同一时间需要完成多项任务的时候被实现的. 2.了解多线程 了解多线程之前我们先搞清楚几个重要的概念! 如 ...

  8. flink window实例分析

    window是处理数据的核心.按需选择你需要的窗口类型后,它会将传入的原始数据流切分成多个buckets,所有计算都在window中进行. flink本身提供的实例程序TopSpeedWindowin ...

  9. Java 7 源码学习系列(一)——String

    String表示字符串,Java中所有字符串的字面值都是String类的实例,例如“ABC”.字符串是常量,在定义之后不能被改变,字符串缓冲区支持可变的字符串.因为 String 对象是不可变的,所以 ...

  10. kafka介绍及安装配置(windows)

    Kafka介绍 Kafka是分布式的发布—订阅消息系统.它最初由LinkedIn(领英)公司发布,使用Scala和Java语言编写,与2010年12月份开源,成为Apache的顶级项目.Kafka是一 ...