写点什么

JDK 11 版本时间表

  • 2018-04-24
  • 本文字数:1991 字

    阅读完需:约 7 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

在 JDK 10 发布两天之后,Oracle Java 平台组首席架构师 Mark Reinhold 提出了 JDK 11 GA 发布的时间表:

  • 6 月 28 日:第一阶段开发(从主分支 fork)
  • 7 月 19 日:运行所有测试
  • 7 月 26 日:第二阶段开发
  • 8 月 16 日:初始候选版本
  • 8 月 30 日:最终候选版本
  • 9 月 25 日:正式版

到目前为止,包含在 JDK 11 中的 JEP 有:

JDK 11 的早期体验版本在 JDK 10 发布前的一个月就有了。Reinhold 之前发了推文:

JDK 11 版本包括 JEP 320(移除 Java EE 和 CORBA 模块),因此它们体积更小:减少了 9 个模块,文件大小少了 22 MB。

JEP-320:移除 Java EE 和 CORBA 模块

Java SE 9 的重组包括对 Java EE 和 CORBA 模块的支持,但根据 JEP-277 ,它们立即遭到弃用,并在未来版本中移除掉。

Java EE 模块是自 Java SE 6 发布以来在 JDK 中提供的 Web 服务栈,以方便 Java 开发人员:

  • JSR-224 :基于 XML 的 Web 服务 Java API(JAX-WS)
  • JSR-222 :用于 XML 绑定的 Java 架构(JAXB)
  • JSR-925 :JavaBeans 激活框架(JAF)
  • JSR-250 :Java 平台的常用注解

已经得到确认的是,JDK 不再需要支持这些模块,因为它们已在过去的 12 年中得到很好的发展,并且可以在第三方站点(如 Maven Central)中随时获得。

CORBA 技术早在 1998 年就有了,但大多数现代应用程序已经不使用该项技术,因此 JDK 中可用的 CORBA 模块也将被移除。Oracle 认为继续为 CORBA 提供支持得不偿失。

计划在 JDK 11 中移除的模块包括:

  • java.xml.ws(JAX-WS,以及相关的 SAAJ Web 服务元数据
  • java.xml.bind(JAXB)
  • java.activation(JAF)
  • java.xml.ws.annotation(通用注解)
  • java.corba(CORBA)
  • java.transaction(JTA)
  • java.se.ee(上述六个模块的聚合模块)
  • jdk.xml.ws(JAX-WS 工具)
  • jdk.xml.bind(JAXB 工具)

移除这些模块的风险已在 JEP 320 中得到确认和记录,特别是对于 Java EE 模块:

如果应用程序依赖 JDK 中 Java EE API 和相关工具的支持,那么它们将无法通过编译或运行。这些应用程序在从 JDK 6、7 或 8 迁移到 JDK 9 或更高版本时将遇到二进制和源代码不兼容问题。

移除 Java EE 模块的另一个风险是,如果已使用–add-modules java.se.ee、add-modules java.xml.bind 等命令行标志,那么已经从 JDK 6、7 或 8 迁移到 JDK 9 的应用程序将无法启动。

依赖 RMI-IIOP、javax.activity 包或 CORBA API 的 CORBA 应用程序将无法通过编译或运行。

红帽首席软件工程师 Aleksey Shipilëv 最近发推文说,由于 JAXB 模块被 JEP-320 移除,因此 SPECjbb2015 基准测试在 Java 10+ 上出现了问题。建议加入 JAXB 依赖来解决该问题:

复制代码
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>

新的 Java SE 版本发布周期

随着 JDK 10 发布六个月之后,JDK 11 计划于 2018 年 9 月发布,新的 Java 发布版本周期已经全面铺开。开发人员可能已经习惯于多年一次的Java 新版本发布,可能由于新版本节奏发生变化,感觉受到轻微的冲击。

Java 官方 Twitter 最近发布了一张图片,用以解释新版本的发布周期:

Java 社区最近有一些关于新版本发布周期的讨论。 Thymeleaf 的创始人兼首席开发人员 Daniel Fernández 最近发推文:

2016 年:“Java 命中注定!它发展得如此之慢!每一个好想法都需要很长时间才能实现!”

2018 年:“Java 命中注定!它发展得太快了!没有人能跟得上!”

对 Fernández 的推文有一些有趣的回应,包括:

“Kotlin?”

“2020 年将会发生什么?Java 命中注定!没有它,我就无法过好我的生活!Java 在我家里随处可见,这个小咖啡杯究竟有什么威力,为什么它可以控制我的家,包括我的身体。”

“Java 命中注定,因为他们专注于完整性而不是简单性。”

“我们从中得到的教训是,变化不如过渡本身那么重要……事实上,这似乎是人生和计算机科学中一再出现的问题。”

“我看到有人抱怨说,Java 10 不应该在 IDE 更新后才能发布,就像鸡和鸡蛋问题一样,除非鸡已经存在并且等待鸡蛋出现。”

“2016 年的抱怨者:让我们用 JavaScript 代替( YOLO )。2018 年的抱怨者:还是 2016 年的那波抱怨者,他们现在又转回 Java,因为 YOLO 太难维护了。”

“因为 Oracle,Java 命中注定。”

时间会告诉我们这个新的发布周期会将如何影响 Java 社区。

其他资源

查看英文原文 Proposed Schedule for JDK 11

2018-04-24 19:0067447
用户头像

发布了 731 篇内容, 共 474.7 次阅读, 收获喜欢 2008 次。

关注

评论

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

中小企业如何选择远程办公网络方案?蒲公英更具优势!

科技热闻

嵌入式系统概述及特点

timerring

嵌入式 11月月更

又一创新!阿里云 Serverless 调度论文被云计算顶会 ACM SoCC 收录

Serverless Devs

K3S +Helm+NFS最小化测试安装部署只需十分钟

京东科技开发者

Docker k8s 软件测试 k3s 应用程序

java培训学习中怎么来提升开发水平

小谷哥

(八)OpenStack---M版---双节点搭建---Cinder安装和配置

指剑

centos OpenStack 11月月更

阿里云FC-Serverless-Wordpress

指剑

阿里云 Serverless 11月月更

企业网络“卫生”实用指南

SEAL安全

企业安全

SAP 异常现象之同一个IDoc可以被POST两次触发2张不同的物料凭证

SAP虾客

SAP IDoc BD87

DTSE Tech Talk 第13期:Serverless凭什么被誉为未来云计算范式?

华为云开发者联盟

云计算 后端 华为云

我们又重写了一个关键服务

Zilliz

人工智能 Milvus 向量数据库

(九)OpenStack---M版---双节点搭建---Swift安装和配置(单存储节点)

指剑

centos OpenStack 11月月更

企业号12月PK榜,等你参与!

InfoQ写作社区官方

热门活动

FreeNas安装、初始化和存储池设置

指剑

centos 11月月更 freenas

看知识图谱如何解锁隐藏的营销利器

Neo4j 图无处不在

算法 neo4j 图数据库 知识图谱 图数据

效能工具如何在企业规模化落地?|线上沙龙回顾

万事ONES

我代码就加了一行log日志,结果引发了P1的线上事故

小小怪下士

Java 程序员 log 代码

(七)OpenStack---M版---双节点搭建---Dashboard安装和配置

指剑

centos OpenStack 11月月更

云安全系列4:解析云安全工具集

HummerCloud

云计算 云安全

云小课|云小课教您如何选择Redis实例类型

华为云开发者联盟

云计算 后端 华为云

AI技术实践|用腾讯云慧眼微信浮层H5解决黄牛抢票问题

牵着蜗牛去散步

人工智能 腾讯云 腾讯 腾讯云AI

教你用JavaScript实现计数器

小院里的霍大侠

JavaScript 编程开发 初学者 入门实战

利用FreeNas创建iSCSI块级存储

指剑

centos 11月月更 freenas

为什么mysql不推荐使用雪花ID作为主键

京东科技开发者

MySQL 数据 雪花id 主键 自增

参加大数据培训学习还来得及吗

小谷哥

Linux安装Hbase并验证

指剑

centos HBase 11月月更

“读懂人话”,阿里AI总分首次超越人类成绩

云布道师

人工智能 阿里云

3.面向复杂度的架构设计模式

程序员小张

「架构实战营」

一个小而美的项目如何进行跨端选型

Onegun

移动端 跨端开发

MobPush 推送查询API

MobTech袤博科技

如何通过链路追踪进行定时任务诊断

阿里巴巴云原生

阿里云 云原生 SchedulerX

JDK 11版本时间表_Java_Michael Redlich_InfoQ精选文章