HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

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:0066940
用户头像

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

关注

评论

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

聊聊 PC 端自动化最佳方案 - Pywinauto

星安果

Python 自动化 Pywinauto PC

区块链产业正处于繁荣前夜(下)

CECBC

Docker 系列 _ 01_ 一念缘起

编程三昧

Docker 8月日更

Linux之time命令

入门小站

Linux

架构实战训练营模块六作业

NewBranSTONE

#架构实战营

如何使用python制作动感炫酷的 动态二维码

4ye

Python 后端 二维码 8月日更

死锁终结者:顺序锁和轮询锁!

王磊

Java 死锁 8月日更

区块链溯源:重塑咖啡产业链

CECBC

审计挖掘之CNVD通用漏洞

网络安全学海

黑客 网络安全 信息安全 WEB安全 漏洞挖掘

百度地图开发-绘制点线提示框 07

Andy阿辉

android Android 小菜鸟 Android端 8月日更

ShardingSphere UI 初步体验

源码 ShardingSphere

区块链产业正处于繁荣前夜(上)

CECBC

SSH免登陆

Mike

VMware中安装的Ubuntu启动时出现A start job is running for raise network interfaces...

Mike

笔记分享 -- 弱网下的极限实时视频通信

声网

音视频 端到端 极限视频通信 弱网

JavaScript 中 Math.random() 生成随机数据

devpoint

JavaScript 8月日更 math

mycat入门:落地分库分表与读写分离

小鲍侃java

8月日更

我为什么坚持六点起床

月哥

极光开发者周刊【No.0827】

极光JIGUANG

ShardingSphere JDBC 语句执行初探

源码 ShardingSphere

在线JSON转HTML工具

入门小站

工具

价值连城 图灵奖得主Yann LeCun 杨立昆的采访 给AI从业者的建议 John 易筋 ARTS 打卡 Week 61

John(易筋)

ARTS 打卡计划

区块链蕴含的变革力

CECBC

命中率高达87%,GitHub收费下载超过28W次的Java面试题库外泄

Java架构师迁哥

03. AI就是与人类思考方式相似的计算机程序:从仿生学看人工智能的定义

Databri_AI

人工智能

neo4j 基本概念与入门实例

escray

学习 neo4j 8月日更

【得物技术】得物App Android Crash治理演进

得物技术

发展 日志 进程 Crash 崩溃

术,路,心:陈天桥的大脑行旅

脑极体

解析区块链技术如何帮助企业加速数字转型?

CECBC

强强联合!北鲲云与宝德就打造混合云HPC解决方案达成战略合作

北鲲云

轻松让你的nginx服务器支持HTTP2协议

程序那些事

Java nginx HTTP 程序那些事 http2

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