intellij-idea IntelliJ不允许下载除最新版本之外的任何旧版Oracle OpenJDK

wpcxdonn  于 2022-11-01  发布在  Oracle
关注(0)|答案(2)|浏览(458)

IntelliJ允许我们安装JDK的

但是,虽然版本选择器显示所有历史Oracle OpenJDK版本,但它似乎只提供最新OpenJDK版本的下载。
只要您尝试选择版本18,它就会切换Amazon Coretto JDK

我无法使用JDK 19,因为Gradle尚不支持它,而且我不确定是否应该选择其他映像。

这是IntelliJ中的一个错误还是故意的?我如何从IDE直接下载旧版本?
另外,选择其他映像是否安全,或者它们是否缺少一些核心JDK功能?

aij0ehis

aij0ehis1#

这是IntelliJ中的一个错误还是故意的?我如何从IDE直接下载旧版本?
我相信这不是IntelliJ的错误,而是JetBrains Co.的决定/责任。默认情况下,IntelliJ从https://download.jetbrains.com/jdk/feed/v1/jdks.json.xz下载可用的JDK列表,URL实际上由registry中的jdk.downloader.url键控制

prdp8dxp

prdp8dxp2#

tl;dr

您可以放心地选择IntelliJ提供的任何JDK产品。Amazon Corretto产品与Oracle OpenJDK产品具有相同的Java-specified行为,并提供相同的性能。
亚马逊保留在其 Corretto 产品中提供紧急修复程序以及包含任何必要调整的权利,以满足其作为云提供商的目的。除此之外,Corretto是基于与 Oracle OpenJDK 产品相同的 OpenJDK 代码库构建的。
要引用Corretto产品页:

  • Amazon Corretto* 经认证符合Java SE标准,可作为许多Java SE发行版的直接替代产品。

详细信息

选择其他映像是否安全,或者它们是否缺少一些核心JDK功能?

  • Oracle OpenJDK* 产品并不比任何其他Java实现更好或更特殊。

几乎所有的Java实现都是为OpenJDK项目开发的代码库而构建的。OpenJDK是一个由Oracle拥有的开源项目,IBM、Apple、Red Hat和其他公司也参与其中。其中一些公司为OpenJDK贡献了自己的JDK源代码,以便集中开发Java规范的单个联合实现。

  • Oracle的 Oracle OpenJDK 产品是免费提供的,它是直接从OpenJDK代码库构建的。此产品不提供支持。
  • Oracle的商业Java产品 Oracle Java 也主要是基于OpenJDK构建的,但Oracle保留添加修补程序以修复紧急错误或调整兼容性的权利,以便快速交付给付费客户。

您可以选择和使用来自多个供应商的JDK产品。所有产品都经过了良好的测试,性能相似,并且共享the Java specifications定义的行为。
一些供应商执行的测试超出了OpenJDK项目的测试范围,因此也超出了对 Oracle OpenJDK 的测试范围。例如,Adoptium项目支持一个高级测试套件AQAvit,用于他们自己的JDK产品,并提供给其他JDK供应商。
JDK供应商包括(不分先后):阿苏尔系统公司、SAP、BellSoft、Adoptium、甲骨文、微软、亚马逊、IBM、红帽等。
我建议阅读Java社区的支柱Java Is Still Free的白色。

相关问题