Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Oracle JDK 8的License及更新问题

Oracle JDK 8的License及更新问题

作者头像
御剑
发布于 2022-11-18 06:44:51
发布于 2022-11-18 06:44:51
2.4K0
举报
文章被收录于专栏:微言码道微言码道

你还在使用Java 8么,使用的又是Oralce JDK 8么?

如果这两个答案的回答都是肯定的,那接下来我要说的就对你是非常有帮助的信息了。

首先申明一点,我不是来劝退你不使用Java 8的,这个事不讨好,我只是来告诉你,如果你还在使用Java 8,那你得关注下它的License以及安全补丁

其实直白点说就是以下两点:

  • • 我能否免费的使用Oralce JDK 8,不会有潜在的License版权问题
  • • 我使用的版本,能否继续接收到安全补丁

上述两点,任意一点存在问题,那都意味着你都可能得做出改变以应对可能的风险。

一)

Oralce在2019年4月的时候,对Oralce JDK的License做了一次变更。

  • • Java SE 8u202及以前的版本,协议是: Binary Code License (“BCL”).
  • • Java SE 8u211及以后的版本,协议是:Java SE OTN License.

后续,由于争议过大,Java SE 17及以后的JDK版本,又变更为Oracle No-Fee Terms and Conditions License协议了。

好吧,也许有点复杂,你会觉得非常绕。

简单点说,大致就是:

  • • 无论是个人或企业商用,可以免费无偿使用Java SE 8u202及以前的版本,但已经没有安全及补丁更新了
  • • 一定条件下,如个人或开发阶段,可以免费无偿使用Java SE 8u211及后续的Java SE 11版本。其它如企业商用则需要付费才能使用。
  • • Java SE 17及之后的LTS版本,可以免费无偿使用,但有一定的支持期限,期限是下一个LTS版本发布之后延长一年。

这样是不是比较容易理解了。

二)

好,有什么影响?

这篇文章只讨论Java SE 8,不讨论Java SE 11及Java SE 17这两个LTS版本。因为相信国内还有相当一部分在使用Java SE 8.

对于使用Oralce Java SE 8的项目来说,通常有以下几种选择

免费使用Java SE 8u202版本

如果你仍在使用Java SE 8u202或之前的版本,那可以放心的一点是,你不用担心需要为此付费的事情。你仍然可以免费使用这个版本。

但问题随之而来,你将不再获取到安全补丁更新了。

对于一个仍然需要继续开发与维护的项目来说,没有安全补丁更新是否是你能接受的一件事情,这是你做为技术负责人要慎重对待的一件事情。

付费使用Java SE 8u211版本

如果你把安全看的非常重要,那选择付费来使用Java SE 8u211及之后的SE 8版本,是个不错的选择。

这仍然是个值得考虑的选择,因为对很多项目来说,相比更换其它JDK或升级至11,17等方案来说,也许付费是更廉价的方案。

三)

还有没有其它选择?

当然还是有的,以下也是你可以考虑的选择之一。

使用OpenJDK

上述的版权限制,都是针对Oralce JDK而言的,但JDK并不只有Oralce JDK,还有其它很多不同的JDK可供你选择。

比如,你一定知道的OpenJDK,它是一个完全开源免费的版本,你不需要为使用OpenJDK付费。

由于Oracle在19年4月的这个改变,在业界造成了很大的争议,许多团队已经迁移至使用OpenJDK了,OpenJDK的使用占比已经高于OralceJDK了

基于OpenJDK的其它发行版本

其实,不只是OpenJDK,许多大公司基于OpenJDK都发行与维护着自己的JDK,列举一些如下:

  • • Red Hat Build of OpenJDK
  • • Microsoft Build of OpenJDK
  • Eclipse Temurin by Adoptium
  • • 阿里的Dragonwell

等,这个列表其实可以很长。这些JDK发行版本都是由一些大公司基于OpenJDK构建的,也都是开源的,并且提供了一定的支持时间。

但很多Java程序员会疑问,OpenJDK与Oralce JDK究竟有什么区别,这些不同的OpenJDK发行版本是否可靠?

关于OpenJDK与Oracle JDK的区别,后续我单独再聊一下这个话题。

现在OpenJDK与Oralce JDK的代码几乎完全一样,所以可靠性是完全不用担心的,而显而易见的一个事实是,大公司自己都在用自己的发行版本,能不可靠?

使用 Oralce JDK 17

如果你确实特别喜欢Oralce JDK,或只信任它。在不付费又想要有安全补丁的前提下,你仍然可以选择使用Oralce JDK 17.

Oralce JDK 17是基于Oracle No-Fee Terms and Conditions License协议,无论是个人或是商用,都可以无偿使用,只是有一定的时间限制。

Oralce宣称,这是在它们听到企业的期望之后做出的改变,因为大多数企业仍然期望使用Oralce JDK。

四)

最后,说一下关于Java SE 8的问题。

做为一个架构师,你需要明白一点:

不使用Java SE 8,并不是一个你可以选择的事情,它只是一个时间问题

无论你有多少理由或困难在前,让你想继续使用Java SE 8,你要明白,Java SE 8终有会告别的一天,它只是一个时间上的问题。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-07-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 微言码道 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
JDK 13 都已经发布了,Java 8 依然是最爱
在 JDK 版本的世界里,从来都是 Oracle 发他的新版本,我们继续用我们的老版本。三年之前用 JDK 7,后来终于升级到了 JDK 8。自从升级了没多久,JDK 就开始了半年发一个新版本的节奏,陆续发布了 9 、10、11、12,直到前两天(2019年9月17日)发布了 JDK13。
古时的风筝
2019/09/29
2.1K0
JDK 13 都已经发布了,Java 8 依然是最爱
开发者其实不太需要关注 Java 收不收费
作为继 Java 8 之后的第一个 LTS 版本,Java 11 的发布引起了广泛关注,一方面是因为这个版本带来了一些重要的新特性,比如热议的 ZGC、HTTP/2 Client、Flight Recorder 等,在内存管理与 JVM 诊断/Profiling 等方面都有很强的能力突破。
三哥
2019/03/04
1.8K0
开发者其实不太需要关注 Java 收不收费
Java SE LTS版本商用收费,有那些开源的替代方案?
Java 是一种广泛使用的编程语言,特别在云计算、大数据处理、电子商务、支付系统等领域有着重要应用。Oracle 收购 Sun Microsystems 后,Java 特许经营权归属于 Oracle,并在近几年内推出了 Java SE 的收费政策。许多企业在使用 Java SE 的同时也面临着成本的增加,因此寻找免费且可靠的开源替代方案变得尤为重要。
猫头虎
2024/06/13
7520
Java SE LTS版本商用收费,有那些开源的替代方案?
JDK的版本号解惑
做Java开发的时候,经常看到这些所谓的“同义词”,Java8、JDK8、JDK1.8、J2SE8、J2SE1.8,他们之间的区别和关系如下所示,
bisal
2021/09/06
5.2K0
JDK的版本号解惑
2019Java依然免费,你应该知道的事实真相,不要被误导--技术领导必读
2019年关于Java是否免费,一直存在误解,国内新闻断章取义,搞错概念,误导开发者。 作为企业的技术领导应该弄清楚关键的概念,避免被误导。
Mc顽固份子
2019/01/04
4K0
2019Java依然免费,你应该知道的事实真相,不要被误导--技术领导必读
Oracle JDK 和 OpenJDK 有什么区别?
OpenJDK是Sun在2006年末把Java开源而形成的项目,这里的“开源”是通常意义上的源码开放形式,即源码是可被复用的,例如IcedTea、UltraViolet都是从OpenJDK源码衍生出的发行版。
Java技术栈
2020/02/21
1.1K0
Oracle发布了Java SE支持路线图,Java 8 支持到2030年
自2017年9月以来,Oracle按照免费的开源许可证(类似于Linux的许可证)提供JDK版本 。从Java SE 11(2018年9月发布,LTS)开始,Oracle不仅在开源协议下为所有用户免费提供免费发行版,而且Oracle还提供了商业支持(收费)的Java SE发行版。以下将列出商业版本的Oracle JDK发行版的关键时间节点。
码农小胖哥
2021/05/14
5.6K0
Open JDK 和 Oracle JDK,哪个更优秀?
Open JDK 是 Sun 在 2006 年末把 Java 开源而形成的项目,这里的“开源”是通常意义上的源码开放形式,即源码是可被复用的,例如 IcedTea、UltraViolet 都是从 Open JDK 源码衍生出的发行版。
南风
2020/02/17
1.2K0
Open JDK 和 Oracle JDK,哪个更优秀?
2019年2月已到,Java 8要收费了吗?
根据此前开源中国发起的 Java 版本使用调查,国内的 Java 主力版本仍是 Java 8,有近 70% 的用户表示仍在使用 Java 8。所以对于「Java 8 是否要收费」这个问题,觉得十分有必要探讨一下。
哲洛不闹
2019/03/06
1.3K0
2019年2月已到,Java 8要收费了吗?
Oracle CDC撤编,SUN嫁给Oracle后还剩哪些家伙
1989 年,Oracle 正式进入中国市场,是第一家进入中国的世界软件巨头。2002年该公司在深圳建立第一家研发中心,随后在北京、上海、苏州、南京相继成立研发中心。最近惊现Oracle中国区研发中心(CDC)进行裁员撤编。Oralce裁员然而给我们并没半毛钱关系,但是Orace收购SUN后成为JAVA语言的拥有者,这却关系到我们这一类主要以JAVA混饭吃得码农们。Oracle收购SUN已经过去快十年了,借此机会来盘点一下曾经SUN拥有的产品的命运。
BUG弄潮儿
2020/06/12
9240
Oracle CDC撤编,SUN嫁给Oracle后还剩哪些家伙
Linux的JDK和Jenv(JAVA_HOME管理器)的详细配置使用教程
使用第一次使用Linux的用户,往往不知道如何配置JDK;不配置JDK,就无法运行Minecraft服务器或者是Apache Tomcat服务器等基于Java虚拟机的应用程序。
Mintimate
2021/01/31
5.6K0
Linux的JDK和Jenv(JAVA_HOME管理器)的详细配置使用教程
Java都到16了,为什么都还在用8,是越做越烂了么?
昨天转了小胖哥关于 Java 16发布的解读(没看过的小伙伴点过来:Java 16 正式发布!你还学得动吗?),还是有童鞋不太了解Java目前的版本机制,所以还是有这样的留言:
程序猿DD
2021/03/30
9980
Java都到16了,为什么都还在用8,是越做越烂了么?
Java17,有史以来最快 JDK
Java 17 已正式发布,该版本是自Java 11以来的首个长期支持版本。Oracle 还提议将 JDK LTS发布的节奏从每三年一次改为每两年一次,并且每个LTS 版本的服务时间至少8年以上。Java 版本通常是6个月一更新,时间分别在3月和9月,而这些版本的支持时间基本在半年左右。
Leetcode名企之路
2021/10/08
7760
JDK的版本迭代(JDK9 - JDK20)
这意味着Java的更新从传统的以特性驱动的发布周期,转变为以时间驱动的发布模式,并且承诺不会跳票。通过这样的方式,开发团队可以把一些关键特性尽早合并到 JDK 之中,以快速得到开发者反馈,在一定程度上避免出现像 Java 9 两次被迫延迟发布的窘况。
鱼找水需要时间
2023/05/11
1.8K0
JDK的版本迭代(JDK9 - JDK20)
Mac的JDK和Jenv(JAVA_HOME管理器)的详细配置使用教程
从Windows转为Mac的用户,第一次配置JDK环境变量可能有些不知所措;上次给搭建介绍了如何在Linux上配置JDK,这次给大家介绍怎么在Mac上配置JDK。配置好JDK,就可以运行Minecraft服务器或者是Apache Tomcat服务器等基于Java虚拟机的应用程序。
Mintimate
2021/02/01
14.6K1
Mac的JDK和Jenv(JAVA_HOME管理器)的详细配置使用教程
openJdk和sun jdk的区别
使用过LINUX的人都应该知道,在大多数LINUX发行版本里,内置或者通过软件源安装JDK的话,都是安装的OpenJDK,
斯文的程序
2019/11/07
7870
OpenJDK和Oracle JDK有什么区别和联系?
《Linux 7安装Oracle 11g打怪经历》的安装过程中,启动图形界面,需要指定jre路径,当时使用yum install jdk安装的,并不能解决问题,查看版本才知道他是OpenJDK,最终使用Oracle JDK,才解决的问题,那OpenJDK和Oracle JDK究竟有什么区别?
bisal
2020/03/13
13.8K1
Java之父:尽快弃用JDK 8!
文 | 局长、出品 | OSC开源社区(ID:oschina2013) Java 之父 James Gosling 近日发表推特称,开发者应尽快弃用 JDK 8,可以选择 JDK 17 LTS,因为后者在各个方面都带来了巨大的改进。 不过醉翁之意不在酒,原来 Java 之父只是为了给东家 AWS 的 OpenJDK 发行版 Corretto “带货”,他建议仍在使用 JDK 8 的开发者可以考虑使用 Corretto 的新版本——包含了所有最新的更新和 CVE 防御。 Corretto 是亚马逊推出的
程序猿DD
2022/04/25
7320
Java之父:尽快弃用JDK 8!
了解JVM的相关概述,发现很多全忘了(文末福利)
官方的说明:https://www.oracle.com/cn/java/technologies/javase-downloads.html Oracle Customers and ISVs targeting Oracle LTS releases: Oracle JDK is Oracle's supported Java SE version for customers and for developing, testing, prototyping or demonstrating your Java applications. End users and developers looking for free JDK versions: Oracle OpenJDK offers the same features and performance as Oracle JDK under the GPL license .
小熊学Java
2023/11/21
2130
了解JVM的相关概述,发现很多全忘了(文末福利)
Java都到16了,为什么都还在用8,是越做越烂了么?
最近一段时间,Java16发布了。有些同学在为之叫好,也有些同学很迷茫,写出了这样的留言:
小灰
2021/03/26
4470
Java都到16了,为什么都还在用8,是越做越烂了么?
推荐阅读
相关推荐
JDK 13 都已经发布了,Java 8 依然是最爱
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档