写点什么

Java 将每半年发布一个版本

  • 2017-09-10
  • 本文字数:1366 字

    阅读完需:约 4 分钟

Oracle 近日宣布,他们将 Java 的发布频率改为每六个月一次。

JCP 执行委员会在八月份的会议上提到了这一说法,随后,Oracle 发言人Donald Smith 在他的博客中确认了这一消息。该决定将在Java 9 正式发布之后开始实行,也就是说,Java 的下一个发布日期是2018 年初。

除了发布周期,Oracle 还宣布了在Java 的构建和发布方式方面所发生的主要变化。Oracle 将把OpenJDK 的二进制包作为面向开发者的主要版本,取代之前的Oracle JDK。

OpenJDK 将采用 GPLv2 许可(包括“类路径例外”)免费发行,移除了之前在 Oracle JDK 上存在的一些限制。Oracle JDK 仍然会继续存在,但需要与 Oracle 签订协议才能获得 Oracle 提供的长期支持。

Java 首席架构师 Mark Reinhold 说,为了避免出现像Java 8 和Java 9 那样的延期情况,所有决定实行新的发布周期。

Java 当前的发布周期为两年一次,Java 9 因为模块化系统(Jigsaw)问题一再延期,已经比预期晚了 18 个月。之前,Java 8 也因为安全问题延期了 8 个月左右。Java 9 的 GA 版本将在 9 月 21 号发布。

新的发布周期严格遵循时间点,将在每年的 3 月份和 9 月份发布,相应的版本号为 18.3、18.9、19.3 等。与现在的发布周期不同,新的发布计划不会为了等待某个主要特性完成而延期。如果一个特性还没有完成,它就不会被合并到发布用的代码仓库里。如果错过了一个版本,就要等待下一次发布。

新的发布周期旨在避免未完成的里程碑特性(比如 Java 8 的 Lambda 或 Java 9 的模块化系统)造成发布延期,让其他一些有用的特性也无法与开发者见面。

除了新的发布周期,Oracle 将会继续每个季度发布更新版本,时间分别为 1 月份、4 月份、7 月份和 10 月份。也就是说,在下一个大版本发布之前,当前版本都会有两个更新版本。更新版本只包含安全问题修复或回归错误的修复。

Reinhold 说:

开发者希望加快速度,这样他们就能够尽快地在生产环境中使用新的特性。

对于没有必要快速升级 Java 版本的企业和组织来说,Oracle 建议他们签订每三年一次的长期支持(Long Term Support,LTS)协议。他们因此可以获得由 Oracle 提供的至少三年的支持,还有可能更长时间,这要取决于市场的反应。

Oracle 建议第一个 LTS 版本为“18.9”,不过这需要与其他的 OpenJDK 贡献者讨论过后才能最终确定。Java 8 被作为一个特别的 LTS 版本,支持日期截止到 2025 年。

Smith 说:

OpenJDK 是开发者了解和使用 Java SE 平台最主要的渠道,而 Oracle JDK 继续作为 Oracle 收费用户的 LTS 版本。

伦敦 Java 社区的负责人 Martijn Verburg 也发表了他对新发布周期的看法:

新的 Java 发布周期对于 Java 生态系统来说是一件好事情。Java 9 的 Jigsaw 和孵化模块问题促成了这一局面的发生。

Oracle 确实面临着发布方面的巨大挑战,不过 OpenJDK 社区拥有足够的知识来帮助一起解决挑战。

我希望看到中间会有所突破,不过对常规的发布周期仍然很期待。其他实现者可以更早地访问到规范的草案,这样他们就可以更早、更经常地发布版本。

Oracle 的 Java 发布速度经常受到诟病,Java 被广大的企业组织所采用,并已成为大量开源平台和语言的基础,而这样的发布速度让 Java 处于很尴尬的境地。新的 Java 发布周期恰好满足了广大用户的期望,不过这仍然需要等待 Java 开发者和 Oracle 用户的反馈。

查看英文原文: Java to Move to 6-Monthly Release Cadence

2017-09-10 19:0015333
用户头像

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

关注

评论

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

openGauss 兰州用户组正式成立

Flink CDC 项目 GitHub star 破 2000,新增来自XTransfer的Maintainer 成员

XTransfer技术

mongodb flink 社区

深度学习下运维日志分析的趋势解读与应用实践

云智慧AIOps社区

人工智能 深度学习 日志分析 智能运维

Apache Flink 在斗鱼的应用与实践

Apache Flink

大数据 flink 开源 编程 实时计算

web前端培训MySQL面试题binlog日志的作用

@零度

MySQL 前端开发

微博系统中”微博评论“的高性能高可用计算架构

Geek_8d5fe5

#架构实战营 「架构实战营」

从撞“新秀墙”到带团队,XTransfer海归码农升级之路

XTransfer技术

程序员 职场 创业公司

Python爬取高质量电脑壁纸,还是很好看的,面试总结

程序媛可鸥

Python 程序员 面试

翻译 | Kubernetes 将改变数据库的管理方式

RadonDB

数据库 Kubernetes RadonDB

数据库人才招聘 | 海量数据

周边生态|StreamNative 联合 Cloudera 开源 Apache Pulsar+Apache NiFi 集成处理器

Apache Pulsar

cloudera 开源 架构 云原生 Apache Pulsar

全卷积网络(FCN)实战:使用FCN实现语义分割

华为云开发者联盟

语义分割 CNN 图像分割 FCN 全卷积网络

10个月,15亿,阿里云如何赋能企业打造交付和创新竞争力

阿里云云效

云计算 阿里云 云原生 研发 研发运维

经验分享 | FAQ制作工具推荐

小炮

JavaScript实现网页截屏五种方法

锋享前端

社区活动| Apache Pulsar 中文开发者与用户组志愿者招募

Apache Pulsar

开源 架构 云原生 Apache Pulsar pulsar 社区

Red Hat:疫情促使企业拥抱开源

BeeWorks

开源IM项目OpenIM 客户端SDK架构剖析-确保消息的有序性,以及消息百分百可达

Geek_1ef48b

Python爬虫入门教程15:音乐网站数据的爬取,我了解到的面试的一些小内幕

程序媛可鸥

Python 程序员 面试

【工具】多人在线协同编辑文档软件

小炮

团队协作 工作效率

java培训JVM基础面试题分享

@零度

Java JVM

VuePress 博客之 SEO 优化(三)标题、链接优化

冴羽

Vue 前端 vuepress SEO 博客搭建

安全大讲堂 | 谭晓生:安全即服务,万物互联下的网络安全新机遇

腾讯安全云鼎实验室

网络安全 商业化 产业安全

数据库人才招聘 | 中国移动

云和恩墨数据库人才招聘

万里数据库加入openGauss社区,共促数据库生态繁荣与产品创新

技术创想 | shiro550和721反序列化简谈

领创集团Advance Intelligence Group

反序列化

MQTT、CoAP 还是 LwM2M?主流物联网协议如何选择

EMQ映云科技

物联网 IoT mqtt emq 物联网协议

2022年了,微信商城小程序还值得做吗?

源字节1号

小程序 微信小程序 开发商城

招贤纳士 | 中国联通数据库团队

Java将每半年发布一个版本_Java_Ben Evans_InfoQ精选文章