从Java 9开始引入了模块系统,从而使JRE单独提供了冗余。
通过它,似乎仍然可以下载它。例如,从现在开始Java 9 archive 另外,here只是说:
与实现和主题内部的文件相比,重组JDK和JRE运行时映像可以清楚地区分开发人员,部署人员和最终用户可以依赖并适当修改的文件。进行更改,恕不另行通知。
新的映像结构消除了这种区别:JDK映像只是一个运行时映像,恰好包含JDK历史上发现的全套开发工具和其他项。
因此,不要谈论彻底删除。 来自:jdk-9
安装jdk-9时,公共jre-9也会自动安装。
此外,我还认为从Java 9开始,应始终使用jlink创建自定义运行时,但是现在似乎仅从Java 11开始执行。 来自Java 11的发行说明,Oracle JDK release notes:
在Windows和macOS中,在以前的版本中安装JDK可以选择安装JRE。在JDK 11中,这不再是一个选项。 在此版本中,不再提供JRE或Server JRE。仅提供JDK。用户可以使用jlink创建较小的自定义运行时。
但是随后我可以找到很多这样的讨论:
是这种情况,并且因为Java 11 无法直接下载JRE吗?还是在Oracle和OpenJDK之间混合实现?还是上述讨论引起误解?
编辑:我不需要下载jre,我可以通过jlink创建它或使用已经可用的解决方案,我的问题更多是理论上的。
答案 0 :(得分:8)
是这种情况,并且从Java 11开始就无法直接下载JRE?
是正确的。
还是在Oracle和OpenJDK之间混合实现?
不,您不是。从Java 11开始,Oracle JDK和OpenJDK JDK都没有相应的JRE供公众下载。
尽管如此,其他Java发行商确实提供了此选项。可以通过下面的“ Java仍然免费”链接找到详细信息。
当JRE作为单独的产品完全停产吗?
使用Java 11的Oracle和OpenJDK发行版已不再使用它。Java11 release notes状态:
“在此版本中,不再提供JRE或Server JRE。仅提供JDK。用户可以使用jlink创建较小的自定义运行时。”
我还没有找到Oracle停止发布其JRE版本的任何公开公告。 (如果有人找到了,请发表评论...)
请注意:这是对所询问的特定问题的特定答案。有关Java相对于许可证,发行版,供应商,支持的状态以及Java是否“免费”的更多信息,建议您阅读以下内容:
这是一个“实时”文档,可能仍然是最新信息的良好来源;即更有可能是最新版本,而不是 this 答案!
答案 1 :(得分:1)
首先,问题不正确。 JRE没有停止。它仅由Oracle终止。例如,在Linux上,JRE仍然可用*:
$ apt-cache search openjdk-11-jre
openjdk-11-jre - OpenJDK Java runtime, using Hotspot JIT
openjdk-11-jre-headless - OpenJDK Java runtime, using Hotspot JIT (headless)
openjdk-11-jre-zero - Alternative JVM for OpenJDK, using Zero
*需要存储库ppa:openjdk-r / ppa
其他一些JDK提供程序也仍然提供JRE: