为什么OpenJDK 10打包为openjdk-11- *?

在寻求从源代码编译OpenJDK时,最新的通用版本( OpenJDK 10.0.1 )坚持使用OpenJDK 9或10.然而,JDK 11将在2018年9月之前发布。

但是,令我惊讶的是,当我apt search openjdk ,结果是:

 ... openjdk-11-jdk - OpenJDK Development Kit (JDK) ... openjdk-8-jdk - OpenJDK Development Kit (JDK) ... 

没有OpenJDK 9或10!

等等,是OpenJDK 11吗? 也许Beta发布? 拿去….

所以我看了看apt show openjdk-11-jdk

 Package: openjdk-11-jdk Version: 10.0.1+10-3ubuntu1 ... 

为什么将OpenJDK 10打包为openjdk-11- * ??

这是因为这些包在发布时将成为OpenJDK 11。 查看此邮件列表post :

我代表Ubuntu基金会团队请求OpenJDK的SRU例外。 我们的计划是将OpenJDK 10作为Bionic的默认JRE / JDK 1发布 ,然后在2018年9月/ 10月将主要的默认JRE / JDK作为SRU移至OpenJDK 11。

=拟议计划=

Bionic将作为默认的JRE / JDK与OpenJDK 10一起发布,一旦到达GA,OpenJDK 11将取代它。

如果我们要在bionic发布时切换到OpenJDK 11,我们希望在发布时避免使用OpenJDK 8作为Bionic中的默认JRE / JDK,因为存在于8和11之间的任何其他接口增量不仅会使存档暴露,它还暴露了JDK的外部消费者的破产。 相比之下,OpenJDK 10和OpenJDK 11之间的接口增量预计相当小,特别是与我们已经知道的OpenJDK 8和OpenJDK 9之间的增量相比较大。 因此,我们应该在18.04版本中将OpenJDK 10作为默认JDK发布,并在发布时转换为OpenJDK 11。

这也是为什么openjdk-11-*的源包实际上被称为openjdk-lts