JDK8终将走进历史,Oracle宣布JDK继续免费

目录

  • 前言
  • Oracle 已免费提供 JDK
  • Oracle Java SE 产品最新动态
  •  为什么业界中用JDK8那么多
  • Java SE 8 公共更新结束
  • 总结

前言

        今天想到上个月无意中听闻到的一句话:JDK8之后收费了,所以大家都用JDK8。当时只觉得这个话说得不对,但因为和说话的人不认识也就过去了。今天想到此事之后,为了不让更多的朋友误解JDK8和Oracle,还是决定写一篇文章说说此事。

Oracle 已免费提供 JDK

        2021年09月14日,JAVA 17 带来的不仅仅是新功能。更快的 LTS 节奏和免费的 Oracle JDK 使其成为有史以来支持最好的现代版本。Oracle JDK收费为人诟病,此次Oracle推出了Free Java License ,大致摘要:

  • Oracle 正在免费提供行业领先的Oracle JDK,包括所有季度安全更新。这包括商业和生产用途。
  • 新许可是“Oracle 免费条款和条件”(NFTC) 许可。此 Oracle JDK 许可证允许所有用户免费使用,甚至可以用于商业和生产用途。只要不收费,再分发是允许的。
  • 开发人员和组织现在无需点击即可轻松下载、使用、共享和重新分发 Oracle JDK。
  • Oracle 将从Oracle JDK 17开始提供这些免费版本和更新,并在下一个 LTS 版本之后继续提供整整一年。以前的版本不受此更改的影响。
  • Oracle 将继续按照自 Java 9 以来的相同版本和时间表提供GPL下的Oracle OpenJDK 版本。

Oracle Java SE 产品最新动态

        截至到2024年1月14日,Oracle 为客户提供针对 Oracle Java SE 产品的 Oracle 标准支持服务,如 Oracle 终身支持政策中所述。对于 Java SE 8 之后的产品版本,Oracle 将仅将某些版本指定为长期支持 (LTS) 版本。Java SE 8、11、17 和 21 是 LTS 版本。Oracle 打算每两年发布一次未来的 LTS 版本,这意味着下一个计划的 LTS 版本是 2025 年 9 月的 Java 25。就 Oracle 标准支持服务而言,非 LTS 版本被视为最新 LTS 版本的一组累积实施增强功能。一旦新功能版本可用,任何以前的非 LTS 版本都将被视为被取代。例如,Java SE 9 是一个非 LTS 版本,并立即被 Java SE 10(也是非 LTS)取代,而 Java SE 10 又立即被 Java SE 11 取代。但是,Java SE 11 是 LTS 版本,因此即使 Java SE 12 已发布,Oracle 客户也将获得 Oracle 标准支持和定期更新版本。

        Oracle Java SE 产品的一些关键产品日期示例包括:

Oracle Java SE 支持路线图*†
释放GA 日期高级支持截止时间延长支持期限至持续支持
8 (LTS)**2014 年 3 月2022 年 3 月2030 年 12 月*****不定
9 - 10(非 LTS)2017年9月至2018年3月2018年3月至2018年9月不可用不定
11 (LTS)2018 年 9 月2023 年 9 月2032 年 1 月*****不定
12 - 16(非 LTS)2019年3月至2021年3月2019年9月至2021年9月不可用不定
17 (LTS)2021 年 9 月2026 年 9 月****2029 年 9 月****不定
18(非 LTS)2022 年 3 月2022 年 9 月不可用不定
19(非 LTS)2022 年 9 月2023 年 3 月不可用不定
20(非 LTS)2023 年 3 月2023 年 9 月不可用不定
21 (LTS)2023 年 9 月2028 年 9 月****2031 年 9 月****不定
22(非 LTS)***2024 年 3 月2024 年 9 月不可用不定
23(非 LTS)***2024 年 9 月2025 年 3 月不可用不定
24(非 LTS)***2025 年 3 月2025 年 9 月不可用不定
25 (LTS)***2025 年 9 月2030 年 9 月2033 年 9 月不定

 为什么业界中用JDK8那么多

        JDK8有很多优点,所以很多人选择使用它。以下是一些常见的原因:

  1. JDK8版本是长期支持版本,得到了Oracle公司的官方支持,可以获得稳定的技术支持和更新。
  2. JDK8版本引入了许多新的特性,例如函数式编程、Lambda表达式、流式处理等,这些特性可以使代码更加简洁、易读、易维护,并且可以提高开发效率。
  3. JDK8版本在之前的版本上在性能优化进行了很多改进,包括在JIT编译器中引入了新的优化技术,提高了代码的执行效率。
  4. JDK8版本对于开发工具提供了更好的支持,例如新的日期/时间API、新的并发工具等,能够帮助开发人员更加方便地进行开发。
  5. JDK8版本在安全性方面进行了一些改进,提供了更好的安全保护机制,能够帮助企业防止安全漏洞。
  6. 技术更新是需要过程的,在市场各产品和服务没有同步达到足够的稳定安全状态的情况下,为了减少风险,企业和个人都会选择相对稳定的老版本坚持使用。

Java SE 8 公共更新结束

        Java SE 8 已经完成了旧版的公共更新结束过程。Oracle 将继续通过 java.com 无限期地为个人用户、开发人员用户和其他用户提供免费的 Java SE 8 公共更新和自动更新。如果设置了终止日期,Oracle 将在此页面和其他通信渠道上提供至少 18 个月的通知。

        Oracle 不打算通过自动更新功能将桌面从 Java SE 8 迁移到更高版本。这包括 Java 插件和 Java Web Start。我们鼓励应用程序开发人员使用 Java SE 9 引入的打包选项,将他们的 Java 应用程序重新打包并交付为包含他们自己的自定义运行时的独立应用程序,而不是依赖于浏览器可访问的系统 JRE。

        Java SE 8 是推荐的、唯一受支持的部署堆栈版本。Java SE 8 部署堆栈可用于在 Windows 平台上运行 Java SE 7 或 Java SE 8 应用程序。Java SE 8 之后将不再支持 Java 部署技术。有关详细信息,请参见 Oracle 终身支持政策。

        JavaFX 已开源并重新设计为可作为独立库使用,而不是包含在 JDK 中。从 Java SE 11 开始,JavaFX 不包含在 Oracle JDK 中。Java SE 8 上对 JavaFX 的支持将持续到 2025 年 3 月。

支持部署技术和 JavaFX*
版本GA 日期Java Web Start 支持直到Java 插件(小程序)支持直到JavaFX 支持截止
62006年12月2017 年 10 月2017 年 10 月不适用
72011 年 7 月2017 年 10 月2017 年 10 月2019 年 7 月
82014 年 3 月2030 年 12 月2019 年 3 月2025 年 3 月
9 及更高版本不适用不适用不适用

        Java SE 11 将在 2023 年 10 月至 2032 年 1 月期间免除扩展支持提升费用。Java SE 8 将在 2022 年 3 月至 2030 年 12 月期间免除扩展支持提升费用。在此期间,您将获得“技术支持策略”的“Oracle 技术支持级别”部分所述的扩展支持。

总结

        JDK17、JDK19、JDK21版本也是JDK8之后Oracle官方所声明地长期支持版本。当这些LTS产品还需要通过市场的不断检验很升级,未来一定会有新的JDK版本又一次占据JDK主流的。JDK8终将会像曾经的JDK5一样,被当下的人们所淡忘。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/320949.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ubantu系统运维命令,端口相关操作

1、使用sudo ufw status命令查看所有开放的端口,如下图: 2、使用命令sudo ufw allow 8443,打开端口8443.如下图: 3、使用 sudo ufw reload刷新端口配置,如下图:

如何挖掘过期老域名并注册一个 DA 为 10 的高价值老域名

原文来源:https://guomuyu.com/registered-a-high-value-domain.html 最近有一些有意从事外贸的朋友阅读了《2024最新外贸建站:WordPress自建外贸独立站教程》这篇文章。然而,当他们尝试注册与自己所从事行业相关的域名时,却发现…

【电源专题】案例:不同模块同一个管脚默认状态不一样会导致什么异常?

案例背景:在产品设计中,有时候会兼容两个不同供应商同一个方案的模块。比如两个供应商使用的内部方案都是一样的芯片,封装也是兼容的。但是由于专利、LAYOUT方便、软件开发方便等角度来看,可能会存在不同模块供应商的同一个PIN脚对应的芯片内部的管脚不一样。管脚不一样那么…

训练FastestDet(Anchor-Free、参数量仅0.24M),稍改代码使得符合YOLO数据集排布

文章目录 0 参考链接1 准备数据1.1 使用以下代码生成绝对路径的txt文件1.2 在config文件夹下新建一个xxx.names文件 2 配置训练参数3 稍改代码使得符合YOLO数据集排布4 开始训练 0 参考链接 官方的代码:FastestDet 1 准备数据 我已有的数据集排布:&am…

vue3移动端适配

将vue3项目中的 px 单位,自动转换为rem 单位 可以看到这里会根据页面缩小放大变化 需要安装两个插件,看步骤 amfe-flexible --- 默认指向2.2.1版本 npm i -S amfe-flexiblepostcss-pxtorem --- 默认指向6.0.0版本 --save-dev 参数会把依赖包的版本信…

抽象类--java学习笔记

什麽是抽象类? 在java中有一个关键字叫:abstract,它就是抽象的意思,可以用它修饰类、成员方法abstract修饰类,这个类就是抽象类;修饰方法,这个方法就是抽象方法 认识抽象类 抽象类的注意事项…

udf提权

环境: kali:192.168.157.128 linux靶机:192.168.157.130 1.使用nmap对当前网段进行扫描 nmap 192.168.157.0/24 发现靶机IP和开放端口 2.对靶机进行详细的服务探测 -sS:使用 SYN 扫描(半开放扫描)方式&#xff0c…

webpack执行流程知识点总结

webpack的运行流程 Webpack 的运行流程是一个串行的过程,从启动到结束会依次执行以下流程: 在以上过程中,Webpack 会在特定的时间点广播出特定的事件,插件在监听到感兴趣的事件后会执行特定的逻辑,并且插件可以调用 We…

ArrayBlockingQueue的使用

异步日志打印模型概述 在高并发、高流量并且响应时间要求比较小的系统中同步打印日志已经满足不了需求了,这是因为打印日志本身是需要写磁盘的,写磁盘的操作会暂时阻塞调用打印日志的业务线程,这会造成调用线程的rt增加。 如图所示为同步日…

docker部署ng实现反向代理

场景 按规定尽可能减少开放到外网的端口,所以需要将多个服务部署到一个ip一个端口上。 方案 使用ng实现请求转发。根据http请求中的host与ng配置文件中的server_name匹配,转发到对应的机器上。 在docker上部署三个容器,每个容器中启动一个…

JavaScript系列——Promise

文章目录 概要Promise三种状态状态改变Promise链式调用Promise处理并发promise.all()promise.allSettled()Promise.any()promise.race() 小结 概要 Promise中文翻译过来就是承诺、预示、有可能的意思。 在JavaScript里面,Promise 是一个对象…

2023年山东省职业院校技能大赛高职组信息安全管理与评估 理论题(正式赛)

2023年山东省职业院校技能大赛高职组信息安全管理与评估 理论题 理论技能与职业素养(100分) 2023年山东省职业院校技能大赛高职组信息安全管理与评估 理论题 【注意事项】 Geek极安云科专注技能竞赛技术提升,基于各大赛项提供全面的系统性…

【JAVA】哪些集合类是线程安全的

🍎个人博客:个人主页 🏆个人专栏:JAVA ⛳️ 功不唐捐,玉汝于成 目录 前言 正文 Vector: HashTable: Collections.synchronizedList()、Collections.synchronizedSet()、Collections.syn…

网络地图服务(WMS)详解

文章目录 1.概述2.GetCapabilities3.GetMap4.GetFeatureInfo 阅读本文之前可参考前文:《地图服务器GeoServer的安装与配置》与《GeoServer发布地图服务(WMS、WFS)》。 1.概述 经过前文的介绍,相信我们对WMS/WFS服务已经有了一个非…

收银系统源码收银系统OEM定制开发(收银POS+线上商城+ERP+营销插件+聚合支付)

源码:零售行业线下线上一体化收银系统 1.开发语言 核心开发语言: php、HTML5、JavaPHP开发环境:php7.3安卓端收银、助手: 原生的JavaPC收银端: HTML5vuecssjsnwjs微信小程序助手: 原生小程序开发商城: uniapp后合管理网站: HTML5vueelement-uicssjs 2…

基于Java SSM框架实现在线作业管理系统项目【项目源码】计算机毕业设计

基于java的SSM框架实现在线作业管理系统演示 JSP技术 JSP技术本身是一种脚本语言,但它的功能是十分强大的,因为它可以使用所有的JAVA类。当它与JavaBeans 类进行结合时,它可以使显示逻辑和内容分开,这就极大的方便了运动员的需求…

day01

文章目录 创建Vue实例插值表达式响应式数据常见标签v-htmlv-show v-ifv-if v-else-if v-elsev-onv-bindv-forv-model 综合案例 创建Vue实例 <!--创建Vue实例&#xff0c;初始化渲染1. 准备容器2. 引包&#xff08;官网&#xff09; — 开发版本/生产版本3. 创建Vue实例 ne…

配置DNS

vim /etc/named.conf vim /etc/named.rfc1912.zones cp named.localhost ./kgc.com.zone -p vim kgc.com.zone 设置备用dns服务器 修改主配置文件&#xff0c;并自动同步到从服务器

Zung氏焦虑症测试SAS

SAS被称为焦虑自评量表&#xff0c;是一种用来测量焦虑症状程度以及观察治疗过程中变化情况的心理量表。主要用于评估心理状态&#xff0c;辅助参考数据&#xff0c;也是焦虑评定的标准。焦虑自评量表系是由William W.K. Zung编制的&#xff0c;该量表已成为心理咨询师、心理医…

COBOL语言 :一种主要专注于解决业务问题的编程语言

译文&#xff1a; 什么是COBOL? COBOL是一种主要专注于解决业务问题的编程语言。COBOL的完整形式是面向业务的通用语言。它主要用于公司和政府的商业、金融和行政系统。这种语言也被用来解决许多数据处理问题。 它是由CODASYL(数据系统语言会议)开发的。它被用作大型机中的一…