博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JDK 11版本时间表
阅读量:6992 次
发布时间:2019-06-27

本文共 2634 字,大约阅读时间需要 8 分钟。

\

看新闻很累?看技术新闻更累?试试,每天上下班路上听新闻,有趣还有料!

\
\\

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

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

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

\\
  • :动态类文件常量\\t
  • :Epsilon:一款低开销的垃圾收集器\\t
  • :移除Java EE和CORBA模块\\t
  • :Lambda参数的局部变量语法\

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模块的支持,但根据,它们立即遭到弃用,并在未来版本中移除掉。

\\

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

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

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

\\

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

\\

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

\\
  • java.xml.ws(JAX-WS,以及相关的和)\\t
  • java.xml.bind(JAXB)\\t
  • java.activation(JAF)\\t
  • java.xml.ws.annotation(通用注解)\\t
  • java.corba(CORBA)\\t
  • java.transaction(JTA)\\t
  • java.se.ee(上述六个模块的聚合模块)\\t
  • jdk.xml.ws(JAX-WS工具)\\t
  • 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移除,因此基准测试在Java 10+上出现了问题。建议加入JAXB依赖来解决该问题:

\\
\\u0026lt;dependency\u0026gt;\    \u0026lt;groupId\u0026gt;javax.xml.bind\u0026lt;/groupId\u0026gt;\    \u0026lt;artifactId\u0026gt;jaxb-api\u0026lt;/artifactId\u0026gt;\    \u0026lt;version\u0026gt;2.3.0\u0026lt;/version\u0026gt;\\u0026lt;/dependency\u0026gt;
\\

新的Java SE版本发布周期

\\

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

\\

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

\\

\\

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

\\
\

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

\\

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

\
\\

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

\\
\

“Kotlin?”

\\

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

\\

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

\\

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

\\

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

\\

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

\\

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

\
\\

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

\\

其他资源

\\
  • Wikipedia中列出的\\t
  • Donald Smith的(2018年3月7日)\\t
  • Simon Ritter的(2018年3月15日)\\t
  • Simon Ritter的(2018年3月21日)\

查看英文原文

转载地址:http://mfdvl.baihongyu.com/

你可能感兴趣的文章
nginx-ssl
查看>>
用批处理修改IP地址
查看>>
无线的规划(思路很重要 ,拿去忽悠人不错)
查看>>
ARM和嵌入式系统开发
查看>>
选择阿里云数据库HBase版十大理由
查看>>
大数据环境下数仓设计
查看>>
求1+2+…+n,要求不能使用乘除法、for、while、if、else...
查看>>
计算1970到现在的秒数
查看>>
windows mysql主从服务器建立
查看>>
初识linux之编译安装Nginx以及基本配置
查看>>
我的友情链接
查看>>
struts1标签库
查看>>
git - openstack代码提交
查看>>
命令行关闭特定服务和调整服务启动方式
查看>>
为何总是拿到薪资范围下限的offer?
查看>>
事务一致性的错误
查看>>
jquery中使用css,offset和position设置top和left属性
查看>>
MyBatis 之 延迟加载(Lazy Load)
查看>>
Disruptor剖析
查看>>
oracle数据仓库物理模型设计
查看>>