首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么Oracle JDK 9下载这么早就结束了?

为什么Oracle JDK 9下载这么早就结束了?
EN

Stack Overflow用户
提问于 2018-05-14 14:20:36
回答 2查看 5.3K关注 0票数 17

我想在我的机器上安装JDK 9,访问了JDK官方下载页面,惊讶地发现,

Java 9已经达到了支持的极限。Java 9的用户应该切换到Java 10。请访问我们的Java下载页面,以获得Java的当前版本。您将被重定向到Java下载页面。几秒钟。请将您的书签更新到Java下载页面。

我做了一些googling和Java发布历史等等,但是找不到任何具体的原因。

我有几个问题-

  1. Oracle仍然支持JDK1.8,但停止了对JDK 9的更新,为什么?
  2. 我是否应该继续使用JDK1.8一段时间,然后直接切换到JDK 10?
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-05-14 15:02:08

在过去,Java主要发行版往往会加载影响深远的特性,这些特性对您可以而且应该编写的代码产生了巨大的影响,比如泛型(Java 5)和函数构造(Java 8)。

在Java 9中,Oracle引入了一个新的模块化系统(Jigsaw项目),这也对JVM体系结构产生了巨大的影响(不过,对语言语法影响不大)。由于与Java社区其他有影响力的成员在实现该功能方面存在分歧,他们不得不将Java 9的发布推迟两次。

大概是从中吸取了教训,如果您愿意的话,Oracle决定彻底改变Java的开发风格,使其更加增量或“敏捷”。他们不想让特性加载的主要版本有时需要很多年才能完成,而是希望每隔六个月发布一次新特性较少的主要版本。

Java 9和Java 10是这个新版本模型的前两个版本,Java 9已经被 10的发布否决了。Java 11于2018年9月发布。这与许多人从Ubuntu发布模型中使用的内容非常相似(顺便提一句,他们甚至计划将版本号替换为涉及发布的年份和月左右的内容,类似于Canonical对Ubuntu所做的事情,但出于某种原因放弃了这个想法)。

使用非LTS版本的Java现在意味着承诺每6个月更新一次使用JDK的软件。在过去,它不应该像将代码从一个主要Java版本迁移到另一个版本那样复杂,因为正如所描述的那样,语言更改应该以一种更渐进的方式发生,但这肯定是需要考虑的事情。如果您不想做出这样的承诺,您应该坚持使用LTS版本,这意味着坚持使用Java 8或Java 11。

对于一个新的“绿地”项目,Java 11很可能是目前最好的选择。但是,如果要使用的工具链还没有完全支持Java 11,则可能需要坚持使用Java 8。

显然,在未来,甲骨文希望每三年或每6次发布一次LTS版本,因此下一个LTS版本预计将在Java11之后发布,那就是Java 17于2021年9月

票数 25
EN

Stack Overflow用户

发布于 2018-05-14 15:19:59

Oracle已转换为时间盒版本。这意味着您将每3个月获得一个新的Java版本,并每隔几年发布一次长期版本。

长期版本预计将在下一个版本发布后3年内得到支持,因此我预计在2019年年底或2020年初之前不会出现新的LTS版本,因为2020年12月是对JDK 8的支持的结束。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50332634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档