我无法理解 java 更新。
使用 Windows 10,当我转到 C:\Program Files\Java
时,我有 3 个文件夹:
-jdk1.8.0_221
-jre1.8.0_251
-jre1.8.0_261
当我打开 cmd 并输入 java -version
时,我得到:
java version "1.8.0_261"
Java(TM) SE Runtime Environment (build 1.8.0_261-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.261-b12, mixed mode)
当我输入javac -version
时,我得到:
javac 1.8.0_221
我检查了环境变量,它有与Java相关的注释。
当我输入 cmd where java
时,我得到:
C:\Program Files (x86)\Common Files\Oracle\Java\javapath\java.exe
C:\Program Files\Java\jdk1.8.0_221\bin\java.exe
当我输入 where javac
时,我得到:
C:\Program Files\Java\jdk1.8.0_221\bin\javac.exe
问题:
- 如果1.8.0_261是最新的java版本,为什么我更新时只更新jre而不更新jdk?为什么jdk一直停留在221?
- 即使jdk最新版本是221并且jre最新版本是261,为什么它仍然保存jre 251文件夹?为什么它不删除它?我应该删除它吗?
- 为什么我的 javac 也没有更新?为什么“where”命令直接指向 221 文件夹名称。更新时它会改变吗?
谢谢。
最佳答案
JDK是Java的开发工具包,JRE是运行时环境。 JDK本身包含JRE。要运行 Java 应用程序,您需要 JRE。但是,有些程序在运行时需要编译器,因此在这种情况下,您需要 JDK。
由于JDK包含JRE。所以,最好使用JDK。
以下是在系统中设置 Java 的步骤。
通过 Java Oracle 在系统中安装任何 JDK。
将系统变量中的JAVA_HOME变量设置为
C:\Program Files\Java\jdk1.8.0_261\
.
设置完成后,系统会知道你已经安装了JDK。现在你的系统不知道javac来编译java应用程序。
在同一系统变量中设置Path_Variable
%JAVA_HOME%\bin
。
由此,您的系统将识别 javac 编译器。
关于Java只更新jre而不更新jdk,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63754747/