首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >既然没有JRE 11可供下载,我如何才能让Java 11运行时环境工作呢?

既然没有JRE 11可供下载,我如何才能让Java 11运行时环境工作呢?
EN

Stack Overflow用户
提问于 2018-11-02 02:26:33
回答 4查看 54.7K关注 0票数 80

与以前的Java版本不同,Java 11没有附带可下载的JRE。在运行一些基于java的软件时,我遇到了“没有Java运行时环境”的错误。为了解决这个问题,我不得不安装Java8JRE。

如果没有更多的JRE 11下载,我怎样才能让我的PC运行Java11JRE?

我正在使用Windows 10。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2018-11-02 02:56:12

现在,似乎没有免费+易于Oracle支持的Java11JRE(仅)选项。你的选择是:

  1. 从OpenJDK站点下载并使用OpenJDK Java11JDK。
  2. 从Oracle站点下载并使用Oracle Java 11 JDK .并确保您完全理解对“商业用途”的限制,这些限制现在适用于Oracle 11+发行版。
  3. 尝试从OpenJDK源代码中滚动您自己的Windows;请参见从OpenJDK窗口创建jre。(我不建议这么做。还有更好的选择)。
  4. 查看如何使用新的jlink工具为您的应用程序创建一个自定义映像(基本上是一个压缩的JRE)。这似乎是Oracle希望第三方应用程序开发人员使用的选项。
  5. 与Oracle sales讨论Java支持合同,并特别询问如何获得JRE构建。)我不知道答案是什么。如果有人尝试过这样做,并且得到了积极的回应,请评论!)
  6. 使用第三方Java发行版。
代码语言:javascript
复制
- The list of Java vendors changes over time, but as of now it includes AdoptOpenJDK, Amazon, Azul, BellSoft, IBM, jClarity, Red Hat and SAP.   See also: [Difference between OpenJDK and Adoptium/AdoptOpenJDK](https://stackoverflow.com/questions/52431764)
代码语言:javascript
复制
- Some of these vendors offer JRE distros.  Check their download sites.
代码语言:javascript
复制
- Since (nearly) all Java vendors base their products on the same standard OpenJDK codebase that is used for Oracle Java, there is no reason to be concerned about the stability of a 3rd party JRE.  Some vendors offer (paid for) support.

(或者从Windows切换到Linux )。我可以从发行版软件包管理器上安装一个OpenJDK Java11JRE软件包,在最近版本的Ubuntu上,.)

对于那些认为Oracle 11和OpenJDK Java 11相同的人,请从Oracle下载站点阅读以下内容:

Oracle JDK 11许可证的重要更改 在JDK 11中,Oracle更新了我们提供Oracle JDK的许可条款。新的Oracle技术网络许可协议与提供以前版本的JDK的许可证有很大的不同。在下载和使用本产品之前,请仔细检查新条款。 Oracle还在jdk.java.net/11上的GPL许可证下提供了该软件。

注意,Oracle说Oracle和OpenJDK Java的许可证是不同的。(不能忍受这两者是从本质上相同的源代码库构建的。)忽视这件事,你就有危险了!

票数 71
EN

Stack Overflow用户

发布于 2019-02-17 20:26:07

斯蒂芬·C的回答是正确的,也是重要的。

Oracle不再打算让最终用户安装JRE或JDK。浏览器中的Java小程序Java Web Start应用程序的交付都在逐步淘汰,使得最终用户不再需要JRE。基于Java的应用程序需要捆绑自己的Java实现。唯一有意识地安装JDK的人将是开发人员&服务器端系统管理员。

重要信息:

了解以下情况:

桌面应用程序现在有望捆绑自己的Java运行时。上面列出的那些工具可以创建一个非常小的运行时定制-适合您的特定应用程序。

下面是一个流程图,它可以帮助您在提供Java 11实现的不同供应商之间找到并作出决定。

以及一个表映射可能的动机或考虑因素导致建议的Java供应商。

兼容性问题

在评论中,有人提出了一个问题,对不同供应商的版本之间的兼容性问题表示关切。

首先,要知道OpenJDK项目包括一组称为OpenJDK社区技术兼容性工具包(TCK)的测试。供应商可以自行声明他们的发布是否通过了这些测试。这些说法没有得到证实,并依赖于荣誉制度。在我上面的图表中,我在我认识的两个供应商上都签了"TCK“:Oracle的Oracle JDK和Azul Systems的Zulu。

上面图表中蓝色桶区域中列出的所有产品几乎都是直接建立在OpenJDK源代码上的。因此,一般来说,您应该看到几乎相同的兼容性。

您可能会考虑两个方面:技术差异和更新/修补程序的日程安排。

至于技术差异,使用OpenJDK项目的供应商可以附带HotSpot引擎OpenJ9引擎。它们的性能不同(启动速度快/速度慢,内存多/少),但它们在遵循Java规范方面的行为应该是相同的。它们可能会有所不同,而且肯定会出现另一种缺陷(可能很快就会被修复),而另一种缺陷则是另一种缺陷。就我个人而言,我不关心这一点,但我提到它的完整性。

另一个技术上的不同是Azul系统使用Zing的JVM和Oracle使用的GraalVM。它们中的任何一个可能在某种程度上彼此之间或与其他产品不同,因为它们有意地具有不同类型的JVM实现,以提供特殊的特性。但考虑到Java规范的彻底性,它们不应该是不相容的。如果是的话,您可以预期任何兼容性问题都会迅速得到解决。如果我需要这些产品的特点,我会充分自信地使用它们。

另一个可能的问题是供应商使用某些bug修复或安全补丁更新自己的版本的速度。例如,Oracle已经声明,他们保留立即将任何现成修补程序发送给自己的客户的权利,同时将这些补丁提交给OpenJDK项目以供考虑。当然,任何提供商业支持的供应商都有可能向他们的付费客户提供补丁或补丁。那些作为对社区免费提供的礼貌而构建的版本可能需要更长的时间来更新,很可能是在OpenJDK项目包含了一个修复/补丁之后。

而且每个供应商都可以随意修改他们的代码库,只要他们遵守Java规范。例如,亚马逊的Corretto团队已经对他们自己的版本进行了改进,然后在OpenJDK项目的上游共享了这些更改。如果OpenJDK决定这样做的话,在它们加入这些修改之前,可能会有时间上的差距。因此,各种版本可能有所不同。但在这一点上,Java社区中的所有供应商似乎都有真诚的承诺,共同努力防止碎片化。所以,再一次,我没有真正关心这一点,但是为了完整性而提到这一点。

票数 73
EN

Stack Overflow用户

发布于 2018-12-17 12:32:41

您可以使用“佐藤JDK”项目网站下载最新的jre和JDK https://github.com/AdoptOpenJDK/openjdk-jdk11

在这里找到最新的链接> https://adoptopenjdk.net/releases.html?variant=openjdk11&jvmVariant=hotspot

编辑:问题已经解决了,

我使用他们的夜间构建来解决JDK包https://adoptopenjdk.net/nightly.html?variant=openjdk11中缺少JRE的问题。

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

https://stackoverflow.com/questions/53111921

复制
相关文章

相似问题

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