最近Oracle发布了Java SE支持路线图,以帮助开发者了解Java SE的维护和支持选项以及相关的时间表,以便可以为公司和个人使用Java SE做出最佳决策。
自2017年9月以来,Oracle按照免费的开源许可证(类似于Linux的许可证)提供JDK版本 。从Java SE 11(2018年9月发布,LTS)开始,Oracle不仅在开源协议下为所有用户免费提供免费发行版,而且Oracle还提供了商业支持(收费)的Java SE发行版。以下将列出商业版本的Oracle JDK发行版的关键时间节点。
Java SE 8 已经终止公共更新
Java SE 8 在往期的发行版已终止了公共更新。Oracle将继续通过java.com为个人,开发人员和其他用户无限期提供Java SE 8的免费公共更新和自动更新。如果设置了终止日期,Oracle将通过公共沟通渠道上至少提前18个月发出通知。
其实就是说Java 8目前只会修修BUG,不再进行功能更新了,而且这个进程也是有终止维护时间的。
Oracle Java SE 产品版本
对于Java SE 8之后的产品版本,Oracle将每三年指定一个版本作为长期支持(LTS)版本。Java SE 11是LTS发行版。非LTS版本被认为是最新LTS版本的一组累积的实施增强。一旦提供了新功能,任何以前的非LTS版本都将被视为已取代。例如,Java SE 9是非LTS发行版,并且立即被Java SE 10(也是非LTS)取代,Java SE 10反过来又被Java SE 11即时取代。但是,Java SE 11是LTS发行版,因此即使Java SE 16现在已发布, Java SE 11仍将获得支持和更新。
生产上强烈推荐使用LTS版本,下半年即将发布的Java SE 17 将是一个LTS发行版本。
附:Oracle Java SE支持路线图
任何产品都有自己的支持策略,一个产品不可能无期限的给予最高优先级的支持。Oracle对自己产品的支持强度分为三个级别:最高优先级的支持,中等优先级的支持,最低优先级的支持。
了解了这些能够帮助你选择最合适你的Java 版本。另外这里提一句,如果你使用密码算法出现了什么 Illegal Key size或者什么key length错误,也是你JDK选择的原因。以胖哥的经验只要注意两点就行了:优先LTS版本,优先OpenJDK。
本文转载自微信公众号「码农小胖哥」,可以通过以下二维码关注。转载本文请联系码农小胖哥公众号。