首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >阿祖尔OpenJDK,祖鲁OpenJDK和OpenJDK有什么区别?

阿祖尔OpenJDK,祖鲁OpenJDK和OpenJDK有什么区别?
EN

Stack Overflow用户
提问于 2020-04-21 02:39:35
回答 2查看 74.2K关注 0票数 72

阿祖尔OpenJDK,祖鲁OpenJDK和OpenJDK有什么区别?

EN

回答 2

Stack Overflow用户

发布于 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 OpenJDKZulu 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的供应商而制作的流程图。

票数 117
EN

Stack Overflow用户

发布于 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二进制发行版选择的名称。这包括三个版本:

  1. 祖鲁社区:在GPLv2下提供的具有类路径异常(CPE)许可的免费发行版。
  2. Zulu Enterprise:一个商业支持的二进制发行版,包含SLA,在Oracle提供它们的更新、每个更新版本(CPU和PSU)和电话/电子邮件错误报告/解决方案之后,更新的速度如何。
  3. Zulu Embedded:为嵌入式应用程序移植和支持特定的芯片组和硬件配置。此外,一个商业产品,虽然免费的ARM 32版本的祖鲁社区提供。

总之,OpenJDK是源代码,Azul是公司,Zulu是从OpenJDK构建的二进制发行版。

票数 33
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61335109

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档