安装JDK时环境变量的配置
编译和运行Java程序必须经过“将源文件编译成字节码”和“解释执行与平台无关的字节码程序”两个步骤,这两个步骤分别需要使用java和javac两个命令。这两个命令保存在Java的JDK的bin目录下。
Windows操作系统不区分大小写,Linux操作系统是区分大小写的。Windows操作系统根据Path环境变量来查找命令。Path环境变量的值是一系列的路径,Windows操作系统在这一系列的路径中依次查找命令,而且在Windows操作系统中设置Path和PATH没有区别。Linux操作系统则根据PATH环境变量来查找命令,PATH环境变量的值也是一系列的路径,在Linux操作系统中只需要设置PATH环境变量即可。
由于历史原因,几乎所有的图书和资料中都介绍必须设置CLASSPATH这个环境变量,在我2015年刚开始学习Java的时候,我的老师也教我配置了该环境变量。实际上,如果使用1.5及以上版本的JDK,完全可以不用设置这个环境变量,也可以正常编译和运行JAVA程序。那么CLASSPATH环境变量的作用是什么呢?当使用“java Java类名”命令来运行Java程序时,JRE到底去哪里搜索Java类呢?在1.4以前版本的JDK,需要在CLASSPATH环境变量中添加一点(.),用以告诉JRE需要在当前路径下搜索Java类。除此之外,还需要将JDK的lib路径下的dt.jar和tools.jar这两个文件的路径添加到CLASSPATH环境变量里。因此,如果使用1.4以前版本的JDK来CLASSPATH环境变量的值为“.%JAVA_HOME%\lib\dt.jar;%JAVA_HOME\lib\tools.jar”。后来的JRE会自动搜索当前路径下的类文件,而且使用Java的编译和运行工具时,系统自动加载dt.jar和tools.jar文件中的类,不需要设置CLASSPATH环境变量。当然,使用1.5以上版本的JDK时,也可以设置CLASSPATH环境变量,一旦设置了该环境变量,JRE会按CLASSPATH指定的路径来搜索Java类。