前几日 Java 16 发布了,发现还是有童鞋不太了解Java目前的版本机制,所以看到了这样的留言:
那么为什么大家都还在用 Java 8 呢?
从这张图可以一目了然,大家平时最喜欢的是什么?当然是白嫖啦~
而从JDK 8u211开始往后的版本,可都是需要商业收费的,所谓的商业收费,就是你自己开发程序使用不打紧,但是一旦当你开发的程序如果用于商业用途,也就是你的程序给你赚钱了,那此时此刻Oracle可是要跟你收费的,你的JDK的使用需要缴费获得授权才是合法的。
有的人会问,如果我不缴费直接用呢?当然,Oracle也是不知道这个事情的,天底下那么多程序员他不可能每个都时刻紧盯有没有付费。
不过万一你真的有那么点才华,你的产品越做越大,越被人熟知的话,总有一天树大招风会引起Oracle的注意,指不定哪天就来跟你打打知识产权的官司。毕竟这是Oracle的惯用手法了,小编毕业前在某视频网站(已被收购)实习的时候,就听闻有项目组因使用盗版Oarcle而收到律师信,最后被迫买了几个Lisence的教训。
这或许就是很多人用老Java 8的原因。
图中我们还可以看到,最后免费的是8u201和8u202两个版本,其实他们可以说都是拥有不同版本号的最后一个免费版本。或许很多小伙伴对这两个版本的区别也傻傻分不清,且让小编为你一一道来:
Oracle从2014年发布了Java SE 7u71版本之后,每当他在发布JDK关键补丁更新时,一般会同步发一个相应的补丁集更新版本。
关键补丁一般用代号CPUs:Critical Patch Updates表示,补丁集更新版本用代号PSUs:Patch Set Updates表示,而两者的区别在于CPUs往往包含安全漏洞修复和重要漏洞修复,是需要所有用户都及时升级更新的,版本号一般采用奇数编号。
当然了,Oracle还算一个人性化的公司,考虑到一部分码农既不想付费(主要没有那么多商业头脑,可能只是单纯的编码),又想跟上当下最新潮的JDK功能特性,所以Oracle其实还提供一个完全免费开源的版本 Open JDK给个人用户使用。在功能特性上, Open JDK与最新版本的Oracle JDK基本没什么区别。
最后小编教你一招,如何在官网找到最后一个免费版本。
那就是:
https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html
好了,最后做个调查,你现在在用哪个版本的JDK呢?留言告诉我们吧!