JDK环境变量配置及原理解释(Windows)

原文URL:https://blog.csdn.net/root5/article/details/78024595

配置操作
计算机→属性→高级系统设置→高级→环境变量

系统变量→新建:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.8.0_121
系统变量→Path→编辑:在变量值最后输入 :%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
系统变量→新建:CLASSPATH 变量值:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
检测:java -version

C:\Program Files\Java\jdk1.8.0_121是本人电脑安装的JDK路径。

原理解释

Path:当用javac、java等命令编译、运行Java程序时,操作系统需要查找javac.exe、java.exe这些可执行文件的位置,然后调用这些可执行程序对Java程序进行对应的操作。我们开发程序代码之后,通常在代码文件夹所处的路径编译代码文件,操作系统会在用户所在当前路径和系统环境变量这两个地方查找对应的Java可执行文件,但是编译、运行Java代码的可执行文件所在的路径(即我们安装JDK的bin所在的路径)通常跟我们编写的代码是不再同一个文件夹目录下的,所以只能将其添加到系统的环境变量中,才能够找到对应的可执行文件,从而顺利编译、运行我们的代码。
JAVA_HOME:直接在Path中编辑JDK安装的绝对路径,对大多数Java应用程序以及我们自己编写的Java代码都是可以正常编译、运行的,但是如果我们对本机安装的JDK进行版本修改或者升级,甚至对其安装路径进行改动,我们就需要更改Path中相应的内容。如果不小心误删了其它部分,很有可能导致我们的操作系统无法正常运行甚至崩溃,因此将bin之前的路径另外赋值给JAVA_HOME是很有必要的。
CLASSPATH:指定程序中使用的.class文件的位置,我们在编写程序代码时经常会引用JDK封装好的类,这些类文件都在上文提到的两个文件夹下面。如果程序中调用我们前面自己编写的Java类,就需要我们在当前所在目录文件夹下面寻找,此时需要我们加上一个 . 来指定同时可以在当前目录下查找.class文件。 
可以在编译代码的命令后面写全我们的Java可执行文件在本地安装的绝对路径,这样也可以正确编译、运行。但是每次都要写很长的路径,同时像很多第三方Java应用程序(比如Tomcat),是必须通过系统的环境变量,而且还必须要有%JAVA_HOME%,才可以正常启动运行,因此配置java环境变量还是很有必要的。
 

你可能感兴趣的:(question)