我已经从oracle官网下载并安装了oraclejdk11,并修改了windows系统环境变量中的PATH&JAVA_HOME变量
C:\Users\Aviral>javac -version
javac 11.0.1
C:\Users\Aviral>java -version
Java 版本“1.8.0_102”
Java™ SE 运行时环境(build 1.8.0_102-b14)
Java HotSpot™ 64 位服务器 VM(构建 25.102-b14,混合模式)
我知道 jdk11 不包含 jre 但我如何在 java 11 中从 cmd 运行 java 程序
原文由 Aviral Ahuja 发布,翻译遵循 CC BY-SA 4.0 许可协议
JDK 包含 JRE,您可以使用
java
bin
文件夹中的可执行文件启动它。您可以像使用任何其他可执行文件一样使用此可执行文件。当您在命令行中键入
java
时,它实际上是速记。它会搜索您的PATH
直到找到第一个匹配的java
可执行文件。如果您想指定一个不同的java
可执行文件,您可以提供该可执行文件的绝对路径。您可能想知道,如果您设置
JAVA_HOME
和PATH
指向 JDK-11,为什么java -version
仍然使用 Javadaf-8-?看看你的
PATH
你可能会发现像C:\ProgramData\Oracle\Java\javapath
这样的东西作为第一个条目之一( 见 this )。当您安装 Java 8 并指向 Java 8 可执行文件(java
、javaw
和javaws
)时,会自动添加该条目。因为它在您的%JAVA_HOME%\bin
条目之前,所以它优先。 However,...\javapath
doesn’t containjavac
and that’s whyjavac -version
usedJAVA_HOME
(Java 11).