依星源码资源网,依星资源网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

【好消息,好消息,好消息】VIP会员可以发表文章赚积分啦 !
查看: 11|回复: 0

[工具] Java SE Development Kit(JDK) 21.0.9 LTS 官方正式版 Win64 jdk21下载

[复制链接] 主动推送

2万

主题

2万

帖子

2万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
23536
发表于 3 小时前 | 显示全部楼层 |阅读模式
Java SE Development Kit(JDK) 21.0.9 LTS 官方正式版 Win64  jdk21下载

Java 21 / JDK 21 已正式 GA,此版本是继 JDK 17 后的长期支持版本 (LTS),Oracle 将为其提供至少八年的技术支持和更新。根据 Oracle 免费条款和条件 (NFTC),JDK 21 二进制文件可在生产中免费使用,也可免费再分发。

JDK 21 将根据 NFTC 接受更新,直至 2026 年 9 月,即下一个 LTS 发布一年后。JDK 21 的后续更新将根据 Java SE OTN License (OTN) 授权,超出 OTN License 有限免费授权范围的生产使用将需要付费。

Java SE Development Kit 21提供了数以千计的性能、稳定性和安全性改进,包括平台增强功能,可帮助开发人员提高工作效率并推动整个组织的创新和增长。新版本在语言特点、库、性能、管理权等多个方面进行主要更新和增强,全新的功能带来绝佳的使用体验!

主要新功能

1. 语言特点

➜ 记录模式

使用记录模式增强 Java 编程语言以解构记录值。可以嵌套记录模式和类型模式,以实现功能强大、声明性和可组合形式的数据导航和处理。

➜ 开关模式匹配

通过表达式和语句的模式匹配来增强 Java 编程语言。扩展模式匹配允许针对多个模式测试表达式,每个模式都有一个特定的操作,以便可以简洁安全地表达复杂的面向数据的查询。

1.1 语言功能预览

➜ 字符串模板(预览版)

使用字符串模板增强 Java 编程语言。字符串模板通过将文字文本与嵌入式表达式和模板处理器耦合来补充 Java 现有的字符串文字和文本块,以产生专门的结果。这是一个预览语言功能和 API。

➜ 未命名模式和变量(预览版)

使用未命名的模式(与记录组件匹配而不说明组件的名称或类型)和未命名变量(可以初始化但不使用)来增强 Java 语言。两者都由下划线字符 表示。这是一项预览语言功能。_

➜ 未命名类和实例主方法(预览版)

改进 Java 语言,以便学生可以编写他们的第一个程序,而无需了解为大型程序设计的语言功能。学生远非使用单独的Java方言,而是可以为单类程序编写简化的声明,然后随着技能的增长无缝扩展他们的程序以使用更高级的功能。这是一项预览语言功能。

2. 库改进

➜ 虚拟线程

将虚拟线程引入 Java 平台。虚拟线程是轻量级线程,可显著减少编写、维护和观察高吞吐量并发应用程序的工作量。

➜ 排序集合

引入新接口来表示具有定义的遭遇顺序的集合。每个这样的集合都有一个明确定义的第一个元素、第二个元素,依此类推,直到最后一个元素。它还提供统一的 API,用于访问其第一个和最后一个元素,以及以相反的顺序处理其元素。

“生活只能倒着理解;但它必须向前生活。

— 克尔凯郭尔

➜ 密钥封装机制接口

介绍密钥封装机制 (KEM) 的 API,这是一种使用公钥加密保护对称密钥的加密技术。

2.1 库改进预览和孵化器

➜ 外部函数和内存 API(第三预览版)

引入一个 API,通过该 API,Java 程序可以与 Java 运行时之外的代码和数据进行互操作。通过有效地调用外部函数(即JVM外部的代码)和安全地访问外部内存(即不由JVM管理的内存),API使Java程序能够调用本机库并处理本机数据,而不会像JNI那样脆弱和危险。这是一个预览版 API。

➜ 结构化并发(预览版)

通过引入结构化并发 API 来简化并发编程。结构化并发将在不同线程中运行的相关任务组视为单个工作单元,从而简化错误处理和取消,提高可靠性并增强可观测性。这是一个预览版 API。

➜ 作用域值(预览版)

引入作用域值,这些值可以在不使用方法参数的情况下安全有效地共享到方法。它们优先于线程局部变量,尤其是在使用大量虚拟线程时。这是一个预览版 API。

实际上,作用域值是一个隐式方法参数。“好像”调用序列中的每个方法都有一个额外的、不可见的参数。没有一种方法声明此参数,只有有权访问作用域值对象的方法才能访问其值(数据)。作用域值使通过一系列中间方法将数据从调用方安全地传递到远方被调用方成为可能,这些中间方法不声明数据的参数,并且无法访问数据。

➜ 载体 API(第六孵化器)

引入一个 API 来表达矢量计算,该计算在运行时可靠地编译为支持的 CPU 架构上的最佳矢量指令,从而实现优于等效标量计算的性能。

3. 性能改进

➜ 代代中关村

通过扩展 Z 垃圾回收器 (ZGC) 来提高应用程序性能,以便为年轻对象和旧对象维护不同的代。这将使ZGC能够更频繁地收集年轻物体 - 这些物体往往会英年早逝。

4. 管理权

➜ 准备禁止代理的动态加载

在将代理动态加载到正在运行的 JVM 中时发出警告。这些警告旨在让用户为将来的版本做好准备,该版本默认不允许动态加载代理,以便在默认情况下提高完整性。在启动时加载代理的功能功能工具不会导致在任何版本中发出警告。

详细新功能请参考:https://www.oracle.com/java/tech ... relnote-issues.html

正式稳定功能

JEP 444:虚拟线程

JEP 431:序列集合

JEP 440:记录模式

JEP 441:switch 模式匹配

JEP 439:分代 ZGC

JEP 449:弃用 Windows 32 位 x86 移植

JEP 451:准备禁止动态加载代理

JEP 452:密钥封装机制 API

预览阶段功能

JEP 442:外部函数和内存 API(第三次预览)

JEP 446:作用域值(预览)

JEP 453:结构化并发(预览)

JEP 430:字符串模板(预览)

JEP 443:未命名模式和变量(预览)

JEP 445:未命名类和实例主方法(预览)

孵化阶段功能

JEP 448:Vector API(孵化器第六阶段)

Java SE Development Kit 21安装教程

1、下载并解压,如图所示

Java SE Development Kit(JDK) 21.0.9 LTS 官方正式版 Win64 jdk21下载

Java SE Development Kit(JDK) 21.0.9 LTS 官方正式版 Win64  jdk21下载

2、安装,安装目录

Java SE Development Kit(JDK) 21.0.9 LTS 官方正式版 Win64 jdk21下载

Java SE Development Kit(JDK) 21.0.9 LTS 官方正式版 Win64  jdk21下载

3、安装完成,根据提示进行后续设置

Java SE Development Kit(JDK) 21.0.9 LTS 官方正式版 Win64 jdk21下载

Java SE Development Kit(JDK) 21.0.9 LTS 官方正式版 Win64  jdk21下载

更新日志

Java™ SE 开发工具包 21.0.8 (JDK 21.0.8)
7月 15, 2025

此更新版本的完整版本字符串为 21.0.8+12 (其中 “+” 表示 “生成”) 。版本号为 21.0.8。此 JDK 符合 Java SE 规范 (JSR 396 2023-09-19) 的版本 21。

IANA TZ 数据 2025b

JDK 21.0.8 包含 IANA 时区数据 2025b,其中包含以下更改:

智利艾森地区的新区域,从 -04/-03 移至 -03。
有关详细信息,请参阅 JRE 软件中的时区数据版本。

安全基线

下表指定了 JDK 21.0.8 发布时 Java 运行时环境 (JRE) 的安全基线:

Java 系列版本    安全基线(完整版本字符串)
21    21.0.8+12
17    17.0.16+12
11    11.0.28+12
8    1.8.0_461-b11

使 JDK 保持最新状态

Oracle 建议在每次关键补丁更新时更新 JDK。 为了确定某个版本是否是最新版本,“安全基线”页面可以 用于确定每个版本系列的最新版本。

包含安全漏洞修复的关键补丁更新会提前一年公布 关键补丁更新、安全警报和公告。 不建议在计划的下一个关键补丁更新之后使用此 JDK(版本 21.0.8) 2025 年 10 月 21 日。

Java 管理服务可供所有用户使用,可以帮助您在系统中查找易受攻击的 Java 版本。在 Oracle Cloud 中运行的 Java SE 订阅者和客户可以使用 Java 管理服务来更新 Java 运行时并执行进一步的安全审查,例如识别 Java 程序使用的潜在易受攻击的第三方库。现有 Java 管理服务用户单击此处登录您的仪表板。Java Management Service 文档提供了对所有人可用的功能列表,以及仅对客户可用的功能。了解有关使用 Java Management Service 监视和保护 Java 安装的更多信息。

删除的功能和选项

security-libs/java.security
➜ 在到期日期后删除了 Baltimore CyberTrust 根证书 (JDK-8303770)
以下过期的根证书已从密钥库中删除:cacerts

+ alias name "baltimorecybertrustca [jdk]"

  Distinguished Name: CN=Baltimore CyberTrust Root, OU=CyberTrust, O=Baltimore, C=IE

security-libs/java.security
➜ 删除了两个 Camerfirma 根证书 (JDK-8350498)
以下已终止且不再使用的根证书已从密钥库中删除:cacerts

+ alias name "camerfirmachamberscommerceca [jdk]"

  Distinguished Name: CN=Chambers of Commerce Root, OU=http://www.chambersign.org, O=AC Camerfirma SA CIF A82743287, C=EU

+ alias name "camerfirmachambersignca [jdk]"
  Distinguished Name: CN=Global Chambersign Root - 2008, O=AC Camerfirma S.A., SERIALNUMBER=A82743287, L=Madrid (see current address at www.camerfirma.com/address), C=EU

其他说明

security-libs/java.security
➜ 添加了 4 个来自 Sectigo Limited 的新根证书 (JDK-8359170)
以下根证书已添加到 cacerts 信任库中:

+ Sectigo Limited

  + sectigocodesignroote46
    DN: CN=Sectigo Public Code Signing Root E46, O=Sectigo Limited, C=GB

+ Sectigo Limited
  + sectigocodesignrootr46
    DN: CN=Sectigo Public Code Signing Root R46, O=Sectigo Limited, C=GB

+ Sectigo Limited
  + sectigotlsroote46
    DN: CN=Sectigo Public Server Authentication Root E46, O=Sectigo Limited, C=GB

+ Sectigo Limited
  + sectigotlsrootr46
    DN: CN=Sectigo Public Server Authentication Root R46, O=Sectigo Limited, C=GB

安装/安装
➜ 使用 OL9 签名密钥对 oracle.com JDK RPM 包进行签名 (JDK-8351906(非公开))
oracle.com 个旨在直接下载到目标系统的 JDK RPM 包现在使用 OL9 签名密钥而不是 OL8 签名密钥进行签名。托管在 YUM 存储库上的 RPM 包仍使用目标存储库的相应密钥进行签名。

核心库/java.net
➜ java.net.http.HttpClient 已得到增强,可向服务器报告 HTTP/2 流控制错误 (JDK-8342075)

现在,当检测到 HTTP/2 流控制错误时,将向服务器报告这些错误。这是一个实现细节,应该对 API 用户透明,但如果连接到不合规的 HTTP/2 服务器,可能会导致流被重置或连接被关闭。java.net.http.HttpClientHttpClient

security-libs/java.security
➜ 更新了 HSS/LMS 公钥编码 (JDK-8347596)

HSS/LMS 公钥的 X.509 编码格式已更新,以符合 RFC 9708 中概述的最新标准。值得注意的是,已删除环绕公钥值的附加 OCTET STRING。为了兼容性,仍可识别早期 JDK 版本生成的公钥编码。

security-libs/java.security
➜ 具有 OCSP 超时的兼容 OCSP readtimeout 属性 (JDK-8347506)

在 JDK 21 中,通过 JDK-8179502 发布了各种超时属性的增强语法。这包括一个新的系统属性,它允许用户在成功建立 TCP 连接后读取 OCSP 响应时控制超时。com.sun.security.ocsp.readtimeout

这会将此属性的默认状态更改为系统属性的值,使其原始默认值为 15 秒。如果系统属性也未设置,则其默认的 15 秒超时将传播到 的默认值 。com.sun.security.ocsp.timeoutcom.sun.security.ocsp.timeoutcom.sun.security.ocsp.readtimeout

security-libs/jdk.security
➜ 如果删除了条目,Jarsigner 应打印警告 (JDK-8309841)

如果从已签名的 JAR 文件中删除了某个条目,则没有机制可以检测该条目是否已使用 API 被删除,因为该方法返回的就好像该条目从未存在过一样。通过此更改,该命令会分析签名文件,如果某些部分没有匹配的文件条目,它会打印出以下警告:“此 JAR 包含不存在的文件的签名条目”。用户可以通过向命令添加选项来进一步查找这些条目的名称。JarFilegetJarEntrynulljarsigner -verify-verbose

错误修复

此版本还包含针对 Oracle 关键补丁更新中描述的安全漏洞的修复。

➜ 21.0.8 中修复的问题:

#    JBS公司    组件/子组件    总结
1    JDK-8348597    客户端库/2d    将 HarfBuzz 更新到 10.4.0
2    JDK-8348596    客户端库/2d    将 FreeType 更新到 2.13.3
3    JDK-8348600    客户端库/java.awt    将 PipeWire 更新到 1.3.81
4    JDK-8348598    客户端库/java.awt    将 Libpng 更新至 1.6.47
5    JDK-8280991    客户端库/java.awt    [XWayland]setDisplayMode 调用后没有 displayChanged 事件
6    JDK-8286204    客户端库/javax.accessibility    [辅助功能,macOS,旁白]当用户在 macOS 上首次迭代到 10 时,VoiceOver 会将微调器值 10 读取为 1
7    JDK-8345728    客户端库/javax.accessibility    [辅助功能,macOS,屏幕放大镜]:JCheckbox 未选中状态不放大,但适用于选中状态
8    JDK-8348936    客户端库/javax.accessibility    [辅助功能,macOS,旁白]VoiceOver 不会宣布在 macOS 上使用“空格”键切换复选框时取消选中
9    JDK-6928542    客户端库/javax.swing    RTF 中的汉字不被解码
10    JDK-8322754    客户端库/javax.swing    单击 JComboBox 当对话框即将关闭时会导致 IllegalComponentStateException
11    JDK-8318915    核心库/java.math    增强 BigDecimal.toPlainString() 中的检查
12    JDK-8335181    核心库/java.net    HttpClient 中 HTTP/2 GOAWAY 帧处理不正确
13    JDK-8343855    核心库/java.net    HTTP/2 ConnectionWindowUpdateSender 可能会错过关闭流中一些未处理的数据帧
14    JDK-8353787    核心库/java.util.jar    SHA-384-Digest java.util.jar.Attributes$Name 实例数量增加,导致内存占用增加
15    JDK-8344589    核心库/java.util:i18n    将 IANA 语言子标记注册表更新至版本 2024-11-19
16    JDK-8356096    核心库/java.util:i18n    ISO 4217 修正案 179 更新
17    JDK-8345296    热点/编译器    AArch64:不允许 prctl 时,虚拟机与 SIGILL 崩溃
18    JDK-8349637    热点/编译器    在某些情况下,Integer.numberOfLeadingZeros 输出不正确
19    JDK-8308966    热点/编译器    为 x86、AVX2 和 AVX512 添加浮点/双模的固有
20    JDK-8314056    热点/编译器    从 frem/drem 中删除运行时平台检查
21    JDK-8336042    热点/编译器    取消优化中的调用方/被调用方参数大小不匹配导致崩溃
22    JDK-8357105    热点/编译器    C2:编译失败,并显示“assert(false) failed: opty program during loop optimization detected empty program”
23    JDK-8332717    热点/GC    ZGC:启发式除以零
24    JDK-8343285    热点/运行时    java.lang.Process 无响应,CPU 使用率飙升至 100%
25    JDK-8343599    热点/运行时    打印容器信息时交换的 Kmem 限制值和最大值
26    JDK-8320892    热点/运行时    AArch64:JNI后恢复FPU控制状态
27    JDK-8339148    热点/运行时    将 os::Linux::active_processor_count() 公开
28    JDK-8345569    热点/运行时    [UBSAN] macOS aarch64 的 filemap.cpp 和 virtualspace.cpp 调整
29    JDK-8319650    热点/SVC    使用类元数据缓存提高堆转储性能
30    JDK-8320924    热点/SVC    通过优化存档对象检查来提高堆转储性能
31    JDK-8311546    security-libs/java.security    证书名称约束未正确验证前导句点
32    JDK-8344361    security-libs/java.security    还原旧版提供程序中无效服务的空返回
33    JDK-8332921    工具/jshell    Ctrl+C 在 JLine 升级后不调用关机钩子



链接: https://pan.baidu.com/s/1orkOAvzB0GCmeQLVLXG8zw
提取码下载:
文件名称:提取码下载.txt 
下载次数:0  文件大小:16 Bytes  售价:1金钱 [记录]
下载权限: 不限 [购买VIP]   [充值]   [在线充值]   【VIP会员6折;永久VIP4折】
安全检测,请放心下载





相关帖子

扫码关注微信公众号,及时获取最新资源信息!下载附件优惠VIP会员6折;永久VIP4折
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

免责声明:
1、本站提供的所有资源仅供参考学习使用,版权归原著所有,禁止下载本站资源参与商业和非法行为,请在24小时之内自行删除!
2、本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,请勿任何商业目的与商业用途。
3、若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
4、论坛的所有内容都不保证其准确性,完整性,有效性,由于源码具有复制性,一经售出,概不退换。阅读本站内容因误导等因素而造成的损失本站不承担连带责任。
5、用户使用本网站必须遵守适用的法律法规,对于用户违法使用本站非法运营而引起的一切责任,由用户自行承担
6、本站所有资源来自互联网转载,版权归原著所有,用户访问和使用本站的条件是必须接受本站“免责声明”,如果不遵守,请勿访问或使用本网站
7、本站使用者因为违反本声明的规定而触犯中华人民共和国法律的,一切后果自己负责,本站不承担任何责任。
8、凡以任何方式登陆本网站或直接、间接使用本网站资料者,视为自愿接受本网站声明的约束。
9、本站以《2013 中华人民共和国计算机软件保护条例》第二章 “软件著作权” 第十七条为原则:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。若有学员需要商用本站资源,请务必联系版权方购买正版授权!
10、本网站如无意中侵犯了某个企业或个人的知识产权,请来信【站长信箱312337667@qq.com】告之,本站将立即删除。
郑重声明:
本站所有资源仅供用户本地电脑学习源代码的内含设计思想和原理,禁止任何其他用途!
本站所有资源、教程来自互联网转载,仅供学习交流,不得商业运营资源,不确保资源完整性,图片和资源仅供参考,不提供任何技术服务。
本站资源仅供本地编辑研究学习参考,禁止未经资源商正版授权参与任何商业行为,违法行为!如需商业请购买各资源商正版授权
本站仅收集资源,提供用户自学研究使用,本站不存在私自接受协助用户架设游戏或资源,非法运营资源行为。
 
在线客服
点击这里给我发消息 点击这里给我发消息 点击这里给我发消息
售前咨询热线
312337667

微信扫一扫,私享最新原创实用干货

QQ|免责声明|小黑屋|依星资源网 ( 鲁ICP备2021043233号-3 )|网站地图

GMT+8, 2025-12-21 03:57

Powered by Net188.com X3.4

邮箱:312337667@qq.com 客服QQ:312337667(工作时间:9:00~21:00)

快速回复 返回顶部 返回列表