Java 环境的安装
Java 环境的安装不像 MySQL,支持 zip 解压式安装(MySQL 详细安装参考), 而是需要执行文件安装(虽然说是文件安装,但是后面下载的位置也可以自定义选择,下载完的文件都在一个文件夹里,效果也和绿色版的差不多)。
在执行安装过程中,它首先会要求安装 jdk,默认位置是 C:\Program Files(这个是可以自定义修改的),但是随后,它又要要求安装一个 jre,要求用户选择安装的位置,如下图所示。
我们知道,JDK 是 Java SE Development Kit,Java 标准版开发包的意思(其中的 SE 分别表示 Stardard、Edition 的意思),它是一套用于开发 Java 程序的开发包,显然,是专门给开发人员用的。既然是专门为开发人员用的,里面一定包括一系列编译、运行 Java 程序所需要的各种工具和资源。
其中,也会有一个叫做 JRE 的文件夹。如下图所示。
JRE ——Java Runtime Environment(Java 运行环境),顾名思义,是运行 Java 程序的条件。
那既然 jdk 里有了 jre,为什么还要在我们安装完 jdk 的时候另外安装一个默认 C 盘的 JRE 呢?这个可以不安装吗?有了 jdk 文件夹里的那个 jre 还不够吗?
解释:
原来,安装两套 jre 是为了分担工作。
如果用户只是执行 java 的程序时,那么有 jre 的环境就可以了。如果用户是开发者,既需要编译又需要运行等,系统就会去寻找包含 java、javac 等命令的父路径(环境变量),也就是 jdk 下的 jre。
这样,在运行外部程序的时候,找的就是 jre;在开发程序的时候,找的就是 jdk 下的 jre。
还有一个原因可以通过自己动手测试出来。在安装 JRE 之后,系统会自动将其添加到系统变量中。
如果你在安装好 jdk 和 jre 还没有去配置环境变量的时候,先打开命令行测试你会发现:
java 命令可以直接运行。(java 命令用于运行编译好的程序)
javac 命令会显示“不是内部命令”(javac 用于编译程序,将 .java 文件编译成 .class 文件)
命令行执行我们知道,只有有配置过环境变量的命令才可以像这样执行程序。
java 命令是用来运行的,JRE 里含有的指令。而 javac 命令是用来编译的,只有 jdk 下才有。前者可以执行,而后者不可以执行,说明为了大众使用,安装程序在安装完 JRE 后自动给 jre 配置到了环境变量。而 jdk 是开发者才会用到的,需要开发者手动去配置。
这又一次印证了 jre 和 jdk 是用于分担工作使用的。这也就是要安装“俩” jre 的原因。
参考链接