在 JDK 版本的世界里,历来都是 Oracle 发他的新版本,咱们继续用咱们的老版本。三年以前用 JDK 7,后来终于升级到了 JDK 8。自从升级了没多久,JDK 就开始了半年发一个新版本的节奏,陆续发布了 9 、十、十一、12,直到前两天(2019年9月17日)发布了 JDK13。安全
2018年12月,由 Snyk 和 The Java Magazine 联合推出发布的 2018 JVM 生态调查报告 显示有 70% 的用户使用 Oracle JDK,21% 的用户使用 OpenJDK。其中 Java 8 的使用者占到了 79%。
jvm
这份报告到如今为止快到一年了,猜想状况应该变化不大。因此说,如今用 Java 8 也不用慌,大部分人也都在用 Java 8。性能
都已经 JDK 13 了,为何还有这么多公司使用旧版本。Java 8 已经算好的了,有的公司还在使用 7,更有甚者还在用 6,你说是否是很 6。操作系统
之因此会出现这种情况,是由于升级版本耗时费力,最重要的是有可能影响服务的稳定性,虽说 Java 是向后兼容的,可是谁知道是否是有坑在里面。在没有重大安全漏洞或重大性能提高的状况下,大多数公司仍是以稳定性为主,既然 Java 8 已经能知足业务需求了,那就用它好了。code
如今又增长了缘由,就是从今年 1 月份开始对 Oracle JDK 的商业用途进行收费。blog
收费是近两年对 Oracle JDK 的一大改变,还有一个就是发版方式的改变。开发
收费get
从今年1月份开始,Oracle JDK 开始对 Java SE 8 以后的版本开始进行商用收费,确切的说是 8u201/202 以后的版本。若是你用 Java 开发的功能若是是用做商业用途的,若是还不想花钱购买的话,能无偿使用的最新版本是 8u201/202。固然若是是我的客户端或者我的开发者能够免费试用 Oracle JDK 全部的版本。io
发版方式阿里巴巴
在 JDK 9 发布以前,Oracle 的发版策略是以特性驱动的,只有重大的特性改变才会发布大版本,好比 JDK 7 到 JDK 8,中间会发多个更新版本。而从 JDK 9 开始变为以时间驱动的方式。发布周期为6个月一个大版本,好比 JDK 9 到 JDK 10,3个月一次补丁版,3年一个 LTS(长期支持版本)。
发版时间稳定了,使用者就能够相应的根据发版节奏调整所使用的 Java 版本了。可是付费使用好像又增长了成本,一直无偿使用的东西,忽然收费了,好像有点接受不了,尤为对于小公司而言。
上面所说的都是 Oracle JDK 。那么若是既想要更新版本又不想花钱怎么办呢,固然也是有办法的。能够选择 Open JDK。
Open JDK 是彻底开源免费的,由 Oracle 以及 Redhat 等开源组织维护。Oracle JDK 只是一个 Open JDK 的发行版。他们两个的关系就好像是原生安卓系统和各个手机厂商定制的操做系统的关系。Oracle JDK 就对应原生安卓系统,好比小米的 MI UI 就对应 Oracle JDK。另外,除了 Oracle JDK,还有其余的 Open JDK 的发行版,好比 AWS 的 Amazon Corretto,阿里巴巴的 Alibaba Dragonwell 等等。
红帽将接替 Oracle 维护 JDK 的长期支持版,好比 OpenJDK 8 和 OpenJDK 11,而且它和 Oracle JDK 的差异已经很是小了,能够放心使用。
然而,对于新版本的新特性,我也只是看一看,学一学,而后专心的用 Java 8 开发。
不要吝惜你的「推荐」呦
欢迎关注,不按期更新本系列和其余文章
古时的风筝
,进入公众号能够加入交流群