简单介绍一下前6个Java发行版: Oracle, OpenJDK, Adoptium, Zulu, Corretto和Liberica
自从Java被引入世界以来,它作为主流编程语言从未被削弱过。 即使像Groovy、Scala和Kotlin这样的语言试图推翻它,Java仍然是一个不可忽视的力量。 对于一门编写了这么久的程序的语言来说,有很多的Java发行版在那里。 甚至像亚马逊和微软这样的大型科技公司也有自己的Java发行版。
选择合适的Java发行版主要是一个成本问题。 许可是发行版产生的主要原因。 而且根据平台的不同,它也可能是一个性能因素。 所以在这篇文章中,我将概述一些顶级的Java发行版,以帮助你做出正确的选择。
1. Oracle JDK
Java的管家 / The steward of Java
Oracle JDK 是 Oracle 的官方 Java 发行版,该公司负责 Java 的现在和未来。 在英语世界中,Oracle被称为Java的管家,因为Oracle在收购Sun Microsystems时获得了管理Java和Java生态系统的权利。
作为官方发行版,Oracle JDK被认为是所有Java发行版中最优化的,特别是对于企业级应用。 它还带有持续的更新、安全补丁和技术支持。但是,如果你想把它用于商业目的,你就必须付费。
由于Java是甲骨文的标志性产品之一,一个强大的Java生态系统对甲骨文的未来至关重要。 这就是为什么Oracle是OpenJDK的最大支持者。 Oracle JDK是OpenJDK的一个发行版,经过进一步优化和增强,具有更多的便利功能。
2. OpenJDK
所有Java发行版的基础
这是领先的社区版Java开源发行版。 它可以免费用于任何目的。 甲骨文公司从Sun公司收购了Java平台和OpenJDK、 IBM、MS、Red Hat和其他科技巨头都支持OpenJDK,最重要的是,它由全世界大量的开发者维护。
正如我前面提到的,OpenJDK是几乎所有Java发行版的基础,包括Oracle JDK。 因此,你可以信任它并使用它。 然而,除非你使用的是LTS版本,否则你无法保证得到支持,而且它的性能总是低于Oracle JDK,这是开发服务时需要考虑的问题。
3. Adoptium (aka AdoptOpenJDK)
易于使用的OpenJDK
Adoptium的前身是AdoptOpenJDK。 Adoptium是一个由Eclipse基金会带头的开源发行版,曾经是开源IDE的代名词,并得到了IBM、MS和Azul Systems等主要技术公司的支持。
Adoptium的目标是使OpenJDK易于使用。 因此,它支持一些OpenJDK没有的东西,包括
- 预构建的二进制文件: 我们提供预构建的二进制文件,以节省你在自己的平台上构建OpenJDK的时间。
- LTS:保证更新、安全补丁、错误修复以及更广泛的版本。
- JVM,如Hotspot或Eclipse OpenJ9:支持更多类型的JVM,给你更多技术选择。
但需要注意的是,它们不提供商业用途的技术支持,这是在生产中使用它们时需要注意的。
4. Azul Zulu
有技术支持的商业发行
Azul Systems的Zulu是另一个围绕OpenJDK构建的发行版。 Zulu也是可以免费使用的,可以用于任何目的。 如果说Adoptium是主要但不完全是开源开发的首选发行版,那么Zulu则是许多企业的首选发行版。 原因之一是它为商业使用提供正式的技术支持。
企业选择Oracle JDK而不是开源Java发行版的一个重要原因是对技术问题的快速和正式响应。 Zulu有这个优势。 它还具有强大的优化功能,并能在大多数平台和操作系统上可靠地运行。
缺点是,它不如其他发行版那样由社区驱动,所以它可能无法迅速跟上Java社区的需求。
5. Amazon Corretto
专为AWS基础设施而设
Corretto是一个基于OpenJDK的开源发行版,由Amazon管理。 亚马逊的基础设施,包括处理世界上最大交易的AWS,据说都是建立在Corretto之上的。 因此,它是一个非常注重性能和安全的发行版,而且它支持通过LTS版本持续交付。
Corretto的功能既是一个优点,也是一个缺点。 它为在AWS上使用进行了优化,这是自己的服务。 如果你正在使用AWS服务,Corretto应该是你的首选。 如果不是,你可能需要测试它与其他发行版的性能。
同样,如果你使用Azure作为云服务,你可能要先考虑Microsoft Build of OpenJDK™ (opens in a new tab),因为它是为该平台优化的。
6. 考虑Liberica JDK
基于云的Java服务可考虑的发行版
Liberica JDK是Bell Soft的一个发行版。 它是我们今天讨论的六个发行版中最不为人所知的一个,但它也是最受某些人欢迎的一个。
首先,Bell Soft专注于基于云的Java环境,吹嘘快速部署时间和低内存及硬件要求。 它也有一些相关的产品,包括Alphaquita Linux,专门从事Java微服务。
基本上,它是免费使用的,开源的,盈利的,并且有官方的技术支持,所以我认为它值得列为你的选择之一。
7. 6 分发版简述
所有Java发行版的根源是OpenJDK。 而发行版在OpenJDK的基础上增加了各种功能,使开发者的生活更加轻松。 得益于此,我们可以根据我们服务的特点选择最好的发行版。
根据发行版的不同,它可以针对不同的平台进行优化,也可以针对某个特定的平台进行高度专业化。 它们在是否提供商业用途的技术支持方面也有所不同。 最后但并非最不重要的是,要考虑他们是否保持你的服务的版本是最新的。
7.1. 分销选择标准
根据我们在这篇文章中看到的情况,如果你是一个大型组织,你可以从Oracle JDK开始,一劳永逸、 如果你能负担得起,可以考虑Zulu、Corretto、MS或Liberica,它们都提供技术支持。 对于开源项目,我认为Adoptium可能是你的第一选择。
