阿祖尔OpenJDK,祖鲁OpenJDK和OpenJDK有什么区别?
发布于 2020-04-21 07:19:18
更新2021-09
在我的第一次阅读中,这个新的许可证似乎使生产使用免费的(以及开发、测试和培训使用),除了出售收费的产品外,还可以捆绑Oracle的产品。但我不是律师,所以你自己读一下条款,并根据需要咨询法律意见。
请记住,许多其他供应商继续提供Java规范的实现,如下面的流程图所示。其中一些供应商出售支持计划,可选地或作为使用其产品的要求。永远不要假设,一定要阅读任何发行版的详细要求。
另一个2021年的更新:将Microsoft添加到下面的供应商列表中。
Java规范与实现
Java由一套规格、JSRs和冬瓜定义,所有这些都是由Oracle发布的。
这些规范是在https://en.wikipedia.org/wiki/OpenJDK项目的源代码中实现的。
有几个供应商提供了该源代码的构建。有些人为这些建筑收费,有些则不收费。
Azul系统就是这样一家供应商,一家提供多种实现的公司。https://www.azul.com/products/zulu-community/是一种,免费提供。https://www.azul.com/products/zulu-enterprise/是他们的另一个产品,一个商业产品。https://en.wikipedia.org/wiki/Azul_Systems#Zing_JVM是他们的另一个产品,一个满足特殊需求的JVM/JDK。
你问:
阿祖尔OpenJDK、祖鲁OpenJDK和OpenJDK之间有什么实际区别吗?
是也不是。
首先,OpenJDK只提供 源代码。因此,您不能使用OpenJDK运行Java应用程序。您必须先自己构建OpenJDK源代码,才能获得特定主机平台的可执行文件,否则必须依赖供应商为您进行构建。如下面的流程图所示,有几个这样的供应商正在构建OpenJDK源代码。
至于Azul系统公司的产品,据我所知,没有像Azul OpenJDK或Zulu OpenJDK这样的东西。正如上面所讨论的,Azul提供多个产品,但没有一个是这样的。
Zulu名称用于3种产品,上面的,加上在受限硬件资源上运行的https://www.azul.com/products/zulu-embedded/。正如在他们的网站上所解释的,所有这三个都是OpenJDK源代码的构建。
所以,没有,基本上没有实际的区别,因为它们都是OpenJDK的构建,并且行为类似于大多数其他构建OpenJDK源代码的版本。任何为符合Java规范而编写的桌面、服务器或控制台应用程序都将在Zulu Community和Zulu Enterprise上运行。
但是,是的,Azul在Zulu产品的Java 8版本中增加了一些特性,比如支持移植的飞行记录器和任务控制。与任何类似的JDK提供程序一样,Azul保留在紧急需要时添加修补程序以修复关键错误或安全漏洞的权利,而无需等待OpenJDK代码库中的发布。
而且,是的,与Azul的Zing产品有很大的不同,因为这是为了满足特殊需要,例如支持大量内存。虽然我假设这个产品使用的是OpenJDK的一部分,但Zing在满足这些特殊需求的同时仍然能够运行任何用Java编写的应用程序。
另一个实际的区别是,您可以从Azul系统获得其构建的支持服务。一些供应商为他们的构建提供支持服务。OpenJDK只提供源代码,不提供支持。
最后,我应该指出,Azul系统是赞助商之一 of AdoptOpenJDK,一个提供(a)构建OpenJDK和(b) 用于质量保证的测试套件的项目。
如果您有具体的产品问题,您应该研究Azul.com网站,并联系阿祖尔系统的销售部门。我在这里只代表我自己,不属于那家公司。我有时使用他们的祖鲁社区产品,而不是其他。
https://medium.com/@javachampions/java-is-still-free-2-0-0-6b9aa8d6d244阅读了➥,以了解甲骨文、OpenJDK和各种供应商的➥实现。
下面是我为帮助您选择实现Java 11的供应商而制作的流程图。

发布于 2020-04-21 11:00:12
让我们从全面披露开始,我为Azul工作(我认为这使我有资格回答这个问题)。
OpenJDK是一个“用于在Java、Standard和相关项目的开源实现上协作的...place”。主要是,它承载了自JDK 6以来的Java版本的源代码存储库。Sun在2007年开源地实现了JDK 7,这就是OpenJDK的起源。随后,为JDK 6创建了一个项目(奇怪的是,它基于JDK 7)。从那时起,每个版本都是通过OpenJDK开发的。
Azul是一家专注于Java和JVM产品的公司。
Zulu是为Azul提供的OpenJDK二进制发行版选择的名称。这包括三个版本:
总之,OpenJDK是源代码,Azul是公司,Zulu是从OpenJDK构建的二进制发行版。
https://stackoverflow.com/questions/61335109
复制相似问题