写点什么

最新的 Java SE 平台和 JDK 版本发布计划

  • 2017-11-12
  • 本文字数:1484 字

    阅读完需:约 5 分钟

最近发布的 Java 9 带来了诸多重大变更,包括一个全新的版本发布计划。该发布计划基于 JEP 223 ,主要用于 Java 平台未来的版本发布。

不过在新版本计划发布之后,Java 首席架构师 Mark Reinhold 立即提议再次修改当前的版本计划,使用更为严格的基于时间的发布模型。

基于 JEP 223 的版本计划主要目标如下:

  • 版本号更易于理解
  • 与当前业界的实际情况相吻合
  • 能够适用于已有的包系统和平台部署机制
  • 避免在版本号中使用两种信息元素
  • 提供简单的 API 用于解析、验证和比较版本号

Java 9 的发布说明对新的版本号格式进行了描述:

复制代码
$MAJOR.$MINOR.$SECURITY.$PATCH
  • $MAJOR版本号随着主要版本的发布而增加,发布版本中需要包含实现了 Java SE 平台规范的重要新特性。主要版本中包含的新特性会提前进行计划和声明。
  • $MINOR版本号随着次要版本的发布而增加,比如缺陷修复、修订标准 API 或者实现了平台规范以外的特性。
  • $SECURITY版本号随着安全更新的发布而增加,发布版本中需要包含关键的安全问题修复。
  • $PATCH版本号随着包含了安全和高优先级用户问题修复的版本发布而增加。

Reinhold 提议使用一种基于时间的发布模型来代替该发布计划。他说,Java SE 平台在过去几年经历了非同寻常的变化。

基于特性发布的方式一般都是因为需要与特性的开发速度保持一致。Reinhold 说,这种发布方式已经过时了,Java 现在需要与那些发展迅速的平台展开竞争。

受其他平台和各种操作系统发行计划的启发,我提议在 Java 9 之后使用一种严格的基于时间的发布模型,每六个月进行一次特性发布,每季度进行一次更新发布,每三年进行一次 LTS(长期支持)发布。

该模型可以让那些急于尝鲜的开发者快速地采用最新的特性,而追求稳定性的企业则可以选择长期支持版本。他们可以提前进行计划,从一个长期支持版本迁移到下一个长期支持版本。

被提议的版本号格式如下:

复制代码
$YEAR.$MONTH

也就是说,2018 年 3 月份的版本将会是 18.3,2018 年 9 月份的版本为 18.9。Reinhold 在 jdk-dev 邮件组中为基于绝对时间的版本模型做出辩护:

  • 绝对时间恰好反应出了发布日期,因为是基于时间的,所以对 JDK 的开发者和用户来说一目了然。如果因为要额外“新增一个特性”导致发布延迟也不会引起混乱。
  • 根据绝对时间可以很容易地知道版本有多旧,所以用户就可以知道自己使用的版本有多落后。而如果是相对时间,则需要知道时间单位是什么,以及版本号是基于什么时间计算得出的。
  • 绝对时间与发布节奏相互独立。如果在若干年后,我们采用更快的发布节奏,比如三个月,就不需要修改绝对时间,但如果是相对时间则需要调整时间单位和起点。

基于绝对时间的版本模型在社区中还不是很流行,Reinhold 在邮件组中提出了修订版本。修订版与最初在 JEP 223 中出现的版本类似,只是做出了折中。

最新提议的版本号格式如下:

复制代码
$FEATURE.$INTERIM.$UPDATE.$EMERG
  • $FEATURE计数每六个月增加一次,不管发布的内容是什么。
  • $INTERIM计数的增加并不包含特性发布,而是缺陷修复和增强,不包含不兼容的变更。对于当前的六个月周期发布模型来说,这个数字一般是零。
  • $UPDATE计数每三个月增加一次,包含兼容性的更新,如安全问题修复、回退问题修复以及新特性问题修复。
  • $EMERG计数只在需要发布紧急版本的时候增加。

基本上这也是一种基于时间的发布计划。$FEATURE 每六个月增加一次,$UPDATE 每三个月增加一次。

如果使用这种模型,下一个特性发布版本(之前叫作主要版本)仍然是 Java 10,将于 2018 年 3 月份发布,而 Java 11 将于 2018 年 9 月份发布。该提议仍然处于讨论之中,不过很快就会有一个结果。

查看英文原文: New Version Scheme for Java SE Platform and the JDK

2017-11-12 18:002934
用户头像

发布了 322 篇内容, 共 144.3 次阅读, 收获喜欢 148 次。

关注

评论

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

观测云:零售业数据监控与分析的革新者

可观测技术

监控 零售

安全性和合规性:保障企业数据的安全

可观测技术

数据安全 数据合规

观测云:多云架构下的监控革新与效能提升

可观测技术

监控 多云

NFTScan 正式上线 Gravity NFTScan 浏览器和 NFT API 数据服务

NFT Research

NFT NFTScan

Java RMI技术详解与案例分析

不在线第一只蜗牛

Java

2024 年 7 月区块链游戏研报:市场波动与数据分化的挑战与机遇

Footprint Analytics

链游

腾讯云大数据 TBDS 参编信通院《数据库发展研究报告》,引领数据湖仓创新

腾讯云大数据

TBDS

官宣|Apache Flink 1.20 发布公告

Apache Flink

flink 实时计算 官宣

ai做ppt的工具哪个好?盘点8个好用的AIPPT生成软件!

彭宏豪95

效率工具 职场 PPT 办公软件 AI生成PPT

给我5分钟,保证教会你在vue3中动态加载远程组件

EquatorCoco

Vue 动态加载

天翼云HBlock有奖众测活动 在线邀请存储Geek玩转轻量存储

InfoQ写作社区官方

热门活动 礼品 活动推荐 天翼云

Prometheus Exporter 在观测云中的应用与优势

可观测技术

#Prometheus

Grafana 与观测云:无缝集成的监控可视化体验

可观测技术

数据可视化

AnyMP4 Screen Recorder for Mac v2.2.16激活版 视频捕获与录制工具

iMac小白

最佳实践:解读GaussDB(DWS) 统计信息自动收集方案

华为云开发者联盟

大数据 GaussDB(DWS) 企业号 8 月 PK 榜 2024企业号8月pk 实时查询

免费一站式搭建企业云上数据库与BI 数据可视化分析平台

XxinQi

言犀智能体平台上线了!赶紧来试试!连接大模型与企业应用的“最后一公里”

京东科技开发者

最新进展!Intel 18A产品,成功点亮!

E科讯

一文全面了解HPC高性能计算平台是什么、怎么选型?高性能计算平台CHPC 都能做什么?

XxinQi

VideoProc Converter 4K for mac(一站式视频处理软件) v6.5中文版

Mac相关知识分享

Mac软件 视频处理软件

JavaScript 字符串方法,让开发者生活更轻松

伤感汤姆布利柏

在国内怎么运营TikTok?试试云手机!

Ogcloud

云手机 海外云手机 tiktok云手机 云手机海外版 海外云手机推荐

解锁亚马逊商品数据:API获取商品列表信息

tbapi

亚马逊API 亚马逊商品数据采集 亚马逊商品列表接口

云手机:海外社媒运营必备工具

Ogcloud

云手机 海外云手机 云手机海外版 云手机群控 海外社媒运营

腾讯云 ES 之日志分析新范式:10 倍性价比提升!基于 ES Serverless 完成审计日志溯源

腾讯云大数据

ES

从困境到突破,EasyMR 集群迁移助力大数据底座信创国产化

袋鼠云数栈

集群架构 大数据存储 大数据计算与存储 大数据计算引擎 集群迁移

继“蓝屏”事件之后,微软再次出现全球性宕机

我再BUG界嘎嘎乱杀

黑客 网络安全 安全 DDoS 网安

打卡智能中国(八):“水花消失术”的AI秘籍

脑极体

AI

润开鸿“龙芯+OpenHarmony”开发平台DAYU431先锋派新品发布

坚果

OpenHarmony 润开鸿

将数据库系统实践转向 AI:使用生成式 AI 创建高效的开发和维护实践

哦豁完蛋了

AI Codec

构建数据中台,引领零售业数字化转型的最佳实践

数造万象

数据中台 零售 数字化 数据智能 实践案例

最新的Java SE平台和JDK版本发布计划_Java_Amit K Gupta_InfoQ精选文章