生成式AI领域的最新成果都在这里!抢 QCon 展区门票 了解详情
写点什么

Java 新版本不是 JDK 1.9

  • 2014-12-05
  • 本文字数:1541 字

    阅读完需:约 5 分钟

JDK 增强提案(JEP)223 是一种新的 JDK 版本命名规则,旨在使主要版本、小版本及安全版本的辨认更简单。它更简单、更直观、易于解析,并且与当前的行业做法一致,尤其是“语义版本命名(Semantic Versioning)”规则。例如,如果使用新的版本命名规则,版本字符串JDK 1.7.0_65-b20(7u65)将变成JDK 7.6.15+20(7.6.15)。

在现有的JDK 版本命名规则中,“JDK 7 Update 65”、“JDK 1.7.0_65”和“JDK 7u65”是同一版本的不同名称。要识别和比较这些版本,简单地对解析出的标记逐点比较是不够的,这需要一个相当复杂的算法。另外,小写字母“u”既不是行业标准,也不是语言无关的。在现有的JDK 数字命名规则中,小版本是20 的倍数,它包含除安全修复之外的更新。安全版本是奇数,在之前小版本的基础上加5 或6 得出。那些不熟悉这种数字命名规则的用户可能会认为“JDK 7 Update 60”是“JDK 7 Update 55”之后的第五个版本,并且错误地认为前者有更多安全方面的修复。小版本和安全版本的这种用一个数值编码的方法不容易辨认,而且也会跳过许多版本。

JEP 223 的目标:版本应该易于理解和解析,应该与当前的语义版本命名这一行业做法一致,而且它应该可供现有的打包和部署系统使用。该提案还将提供一个 API,用于版本字符串解析、验证和比较。改变先前 JDK 版本的版本字符串格式并不是该项提案的目标。

版本号是一个由非负整数组成的非空序列,由句点分隔。它不包含前导零,并且匹配正则表达式 [1-9][0-9]*(\.(0|[1-9][0-9]*))*。前三个基本部分是 $MAJOR.$MINOR.$SECURITY。主要版本包含了新 Java SE 平台规范所指定的重要新特性,其发布时 $MAJOR 会增加。小的更新版本可能包含兼容的 Bug 修复、修改了标准 API 以及实现了像新的垃圾收集器或支持新硬件架构这样的新特性,其发布时 $MINOR 会增加。安全更新版本包含了重要的补丁,其发布时 $SECURITY 会增加。当 $MAJOR 增加时,$MINOR 和 $SECURITY 会重置为 0。在 $MAJOR 值一定的情况下,不管 $MINOR 值是多少,$SECURITY 值越大就表明它是一个更安全的版本。

版本字符串由版本号、可选的预发布及构建信息组成。预发布标识 ea 表示早期试用版本,正处于活跃开发状态。每完成一次构建,内部版本号都会增加,当版本号的任何部分增加时,内部版本号都会重置为 1。去掉尾随零的版本字符串称为短版本字符串。下表比较了 JDK 9 的两种可能的版本字符串,包括现有格式和提案格式。请注意,现有的假定 JDK 版本号永远以 1 开头的代码将无法正常工作。

复制代码
Existing Proposed
Release Type long short long short
------------ -------------------- --------------------
Early Access 1.9.0-ea-b19 9-ea 9.0.0-ea+19 9-ea
Major 1.9.0-b100 9 9.0.0+100 9
Security #1 1.9.0_5-b20 9u5 9.0.1+20 9.0.1
Security #2 1.9.0_11-b12 9u11 9.0.2+12 9.0.2
Minor #1 1.9.0_20-b62 9u20 9.1.2+62 9.1.2
Security #3 1.9.0_25-b15 9u25 9.1.3+15 9.1.3
Security #4 1.9.0_31-b08 9u31 9.1.4+8 9.1.4
Minor #2 1.9.0_40-b45 9u40 9.2.4+45 9.2.4

该提案于 2014 年 10 月 20 日创建,现在处于候选状态,将随 JDK 9 一起发布。要了解更多信息,包括一个 JDK Java API 示例,请阅读 JEP 223 以及 JBS(JDK Bug System)8061493

查看英文原文:**** New Java Version - it’s not JDK 1.9

2014-12-05 00:556646
用户头像

发布了 1008 篇内容, 共 373.4 次阅读, 收获喜欢 340 次。

关注

评论

发布
暂无评论
发现更多内容

乌卡时代来临,企业供应链管理体系的应对策略

数商云

数字化转型 供应链

深度解析:DAO的7种常见投票机制

TinTinLand

两届获奖选手 手把手教你如何征战华为软件精英挑战赛

科技热闻

分享ApiPost的个人体验感受

Xd

后端 API

用开源github,还是咱中国自己的代码托管平台云效?

阿里云云效

GitHub 云计算 阿里云 代码管理 代码托管

一个关于SDWAN单臂部署方案验证的实验

天翼云开发者社区

网络

阿里云云原生一体化数仓入选 2022数博会“十佳大数据案例”

阿里云大数据AI技术

数据挖掘 大数据 分布式计算 数据处理 MaxCompute

一个轻量的数据库数据告警器

山河已无恙

Java 数据监控

netty系列之:在netty中使用UDP协议请求DNS服务器

程序那些事

Java Netty 程序那些事 5月月更

如何挑选文档管理软件?

小炮

文档管理

在线二进制转文本字符工具

入门小站

工具

第二章 启航

Geek_古藤模根

图数据库实战 gremlin 入门 Gremlin

如何实现文档协作共享?

小炮

喜报|海泰方圆成功入选中国档案学会单位会员

电子信息发烧客

uniapp 和 HTML5 区别

CRMEB

你会用Apifox写断言吗?

Liam

测试 Postman 自动化测试 测试工具 测试自动化

NVIDIA安培架构下MIG技术分析

天翼云开发者社区

照亮旷野的,是少年开发者眼中的炬火

脑极体

明源云天际PaaS平台,构建零代码、低代码在线协同开发实践

科技热闻

未来3年,远程办公或成普遍现象,如何提高远程办公效率?

WorkPlus

在线HTML转PHP工具

入门小站

工具

10分钟弄懂云原生网络功能,快来瞧瞧!

VoltDB

云原生 云原生网络 网络功能

LinkedHashMap 源码分析-访问最少删除策略

zarmnosaj

5月月更

linux之xargs使用技巧

入门小站

Linux

Neo生态| Polaris Launchpad 黑客松评审现已启动

TinTinLand

PolarDB-X迎来开源后首个重大版本升级,2.1版本新增5大特色功能

阿里云数据库开源

数据库 阿里云 开源 国产数据库 PolarDB-X

直播预告 | PolarDB-X 动手实践系列——基于 Prometheus + Grafana 的 PolarDB-X 监控体系

阿里云数据库开源

数据库 阿里云 开源 PolarDB-X 教学

Apipost 多人多角色实时协作 爆赞!!!

Xd

数据库 后端 接口测试 API

网络空间测绘国内外发展及现状

郑州埃文科技

网络安全 IP地址 网络空间测绘技术

两分钟带你体验ApiPost的魅力!

Xd

自动化 接口测试 API

月薪 30K 以上的程序员都在学啥?附书单合集

C++后台开发

后端开发 Linux服务器开发 C++后台开发 Linux后台开发 后端开发书籍

Java新版本不是JDK 1.9_Java_Bienvenido David_InfoQ精选文章