JDK 11 是发布了,但收费吗?
Posted Java面试那些事儿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JDK 11 是发布了,但收费吗?相关的知识,希望对你有一定的参考价值。
自 9 月 26 日,Oracle JDK 11 正式版本发布以来,一直被大家所看好,因为它是继 6、7、8之后,第一个长期支持的版本「见下图」,而 9 、10 估计多半会夭折了。。。
对于这次的发布,我主要关注的就两个问题:
1、稳定吗?
2、收费吗?
后面的文字主要围绕这两个话题展开的。
一、稳定吗?
其实,对于企业用户来说,稳定可靠才是最重要的。那么刚刚发布的 JDK 11 到底稳定性如何呢?
如果你是付费用户,其实不用担心这个问题。
对于大多数的非付费用户来说,就得要考虑了,只有考虑清楚风险后,才敢迁移。
首先,这次有 OpenJDK 社区的站台「长期支持」,Oracle 提供了免费的 OpenJDK build,并承诺「维护 6 个月」。
再者,Andrew Haley 等社区专家也已经明确保证,会组建并领导「JDK-11-updates」项目,而且还做了相应的保证「见下图」。
就我看来,如果想迁移到 JDK 11 的企业,毫无疑问,前期肯定还是有试错成本的。因此,建议在新的项目中引入 JDK 11,不要乱动稳定的老业务。。。
二、收费吗?
其实关于 Oracle JDK 收费的问题,我记得 16 年,大家都在知乎上面讨论过,当时 R 大给出了完美的回答。
Oracle提供的 Java SE Advanced 系列的产品是收费的,只有在「通用计算」使用范围内是完全免费的。
这里的「通用计算」如何界定?比如,如果你使用了 -XX:+UnlockCommercialVMOptions 的功能,那么就得要收费;或者你将 Oracle Java SE 系列产品在「特殊嵌入式计算系统」中使用也会收费。
时隔两年,JDK 又将是如何收费的呢?
我们先来看一张图。
从上图中,我们可以知道:Oracle 将继续提供JDK 8 免费的公共更新和自动更新,支持个人用户到 2020 年 12 月底,支持商业用户到 2019 年 1 月;换句话说如果想 Oracle 后续继续为你提供 JDK 8 的支持,那么则需要付费。
那么,最新的 JDK 11 又是如何收费的呢?
Oracle 将发布两个不同版本,分别为 Oracle JDK 和 OpenJDK 「除了所附带的许可文件不一样,刚发布的版本几乎完全相同」。
对于 Oracle JDK 来说,支持 BCL 协议,开发人员可以免费使用,但不能用于生产,如果全额付费的话,可支持到 2026 年 9 月。
对于 OpenJDK 来说,支持 GPL 协议「一般只支持到发布的前 6 个月内」,可以用于公司使用,因此,对于JDK 11 来说,应该有JDK 11.0.0,然后是两个安全补丁 11.0.1 和 11.0.2 。如果你要继续使用 Oracle 的 OpenJDK 构建和安全补丁,那么您将必须在发布后的一个月内迁移到 JDK 12,见如下图绿色的部分为免费支持版本。
在此,不得不说 Oracle 太鸡贼了。。。
那问题来了,还有那些可构建 JDK 的产品可供选择呢?
AdoptOpenJDK
它同样支持 GPL 协议且免费 ,与 Oracle OpenJDK 不同的是,它将在 JDK 11 等主要版本中持续更长的时间。第一次了解它是在 reddit 的一个话题中「见下图」。
最近,AdoptOpenJDK 开发团队表示 JDK 11 版本将在下一个主要版本发布一年后继续使用4年,并且他们将提供持续构建 OpenJDK 的源存储库中创建和发布的安全修补程序。
这里,还需要提一下,AdoptOpenJDK 除了标准的 OpenJDK 构建之外,还可以使用 OpenJ9 进行构建。 OpenJ9 最初是 IBM 的 JVM,但 OpenJ9 现在是 Eclipse的开源。
Red Hat OpenJDK
Red Hat 通过 Red Hat Enterprise Linux「RHEL」提供 OpenJDK 的构建,这是一个付费的商业产品。他们向 OpenJDK 提供非常多的安全补丁,Red Hat 已经运行了 Java 6 和 7 的安全更新项目。Red Hat 构建更好地集成到操作系统中,因此它不是纯粹的 OpenJDK 构建。
IBM
IBM 为 Java 8 及更早版本提供并支持 JDK。他们还使用 OpenJ9 为 AdoptOpenJDK 构建提供商业付费支持。
Azul Zulu
这款产品是通过 R 大了解的,它的核心部分就是原汁原味的 OpenJDK ,没有任何额外的改动—— Azul 有时候也会对 OpenJDK 做 bug fix,但这些都是通过提交回到 OpenJDK 去然后再进入到 Zulu Java SE 产品中的。
只有在希望购买 Azul 的技术支持的时候,Zulu 的商业技术支持部分才是收费的;不购买收费的技术支持的话,Azul 也有为 Zulu 提供免费的社区技术支持。
SAP
SAP 根据 GPL+CE 协议为 Jdk 10 及更高版本提供 JDK。他们还有一个商业的闭源 JVM,目前,没有找到任何有关支持它的信息。
这里为各位读者列举了不少可供参考的构建方案,有收费的,有免费的,具体怎么选择,还是看个人吧。
反正,我一直认为免费的反而最贵。。。
如果喜欢我的文字,记得转发或者点赞。
参考
https://www.oracle.com/technetwork/java/javase/eol-135779.html
http://mail.openjdk.java.net/pipermail/jdk-dev/2018-August/001830.html
https://blogs.oracle.com/java-platform-group/oracle-jdk-releases-for-java-11-and-later
https://www.zhihu.com/question/53791269
https://www.reddit.com/r/java/comments/9hd97k/openjdk_vs_adoptopenjdk
https://blog.joda.org/2018/09/time-to-look-beyond-oracles-jdk.html
https://access.redhat.com/articles/1299013
https://developer.ibm.com/javasdk/support/lifecycle
—————END—————
看更多技术好文
请长按下方图片扫码关注
以上是关于JDK 11 是发布了,但收费吗?的主要内容,如果未能解决你的问题,请参考以下文章