(更清楚)
你可以找到..._linux-x64_bin.rpm,..._windows-x64_bin.exe而jre在Oracle的官方网站(点击每一个).但是在哪里jre?!
另外,JRE不包括JDK.我期待C:\Program Files (x86)\Common Files\Oracle\Java安装javapath.
我们的应用程序的最终用户是否需要安装JDK?
我从官方网站下载并安装了Oracle JDK 11 .我安装了 PATH和javapath_target_3015921(在Windows机器上一台Linux机器和第二对第一).但发现了意外的事情!JRE在哪里?
这是CentOS 7上安装路径的快照.如您所见,没有..._linux-x64_bin.rpm文件夹:
# ls /usr/java/jdk-11.0.1/
bin conf include jmods legal lib README.html release
Run Code Online (Sandbox Code Playgroud)
关于Oracle JDK 8的相同快照(..._windows-x64_bin.exe特别参见文件夹):
# ls /usr/java/jdk1.8.0_191-amd64/
bin lib src.zip
COPYRIGHT LICENSE THIRDPARTYLICENSEREADME-JAVAFX.txt
include man THIRDPARTYLICENSEREADME.txt
javafx-src.zip README.html
jre release
Run Code Online (Sandbox Code Playgroud)
Windows机器上的相同快照:
> dir /b "C:\Program Files\Java\jdk-11.0.1" …Run Code Online (Sandbox Code Playgroud) 我想使用软件包在Ubuntu 18.04上安装Oracle Java 8。我已经添加了apt-repository,但是在尝试安装它时说包不可用。我要做的就是:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
Run Code Online (Sandbox Code Playgroud)
然后它说:
Package oracle-java8-installer is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or is only available from another source
E: Package 'oracle-java8-installer' has no installation candidate
Run Code Online (Sandbox Code Playgroud)
程序包可能已被删除并且现在不可用?
从Java 9开始,引入了模块系统,从而使JRE的单独提供变得多余。
通过,似乎仍然可以下载它。例如,现在从这里开始Java 9存档 此外,这里仅指出:
重组JDK和JRE运行时映像,以明确区分开发人员,部署人员和最终用户可以依赖并适当修改的文件,与实现内部的文件相反,这些文件可以更改而无需更改注意。
新的映像结构消除了这种区别:JDK映像只是运行时映像,恰好包含JDK历史上发现的全套开发工具和其他项目。
因此,没有谈论彻底清除。来自:jdk-9
当您安装jdk-9时,public jre-9也将自动安装。
另外,我还以为从Java 9开始就应该始终使用jlink创建自定义运行时,但是现在看来似乎只从Java 11开始执行。从Java 11的发行说明中可以看出,Oracle JDK发行说明:
在Windows和macOS中,安装早期版本中的JDK可以选择安装JRE。在JDK 11中,这不再是一个选项。在此版本中,不再提供JRE或Server JRE。仅提供JDK。用户可以使用jlink创建较小的自定义运行时。
但是随后我可以找到很多类似的讨论:
是这种情况,并且从Java 11开始就无法直接下载JRE ?还是在Oracle和OpenJDK之间混合实现?还是上述讨论引起误解?
编辑:我不需要下载jre,我可以通过jlink创建它或使用已经可用的解决方案,我的问题更多是理论上的。