Java设置CLASSPATH

1 Java的CLASSPATH是什么

CLASSPATH:CLASSPATH是一个环境变量,是Java运行时环境搜索类和其他资源文件(比如jar\zip等资源)的路径。

在以下情况下,您需要设置CLASSPATH:

  • 您需要加载当前目录或任何子目录中不存在的类。
  • 您需要加载不在扩展机制指定位置的类。

CLASSPATH路径是以目录名称或者文件名称结尾。包含以下这几种情况:

  • 如果是JAR或zip,则该文件包含类文件,CLASSPATH以zip或JAR文件的名称结尾。
  • 如果将类文件放在未命名的程序包中,则CLASSPATH以包含类文件的目录结尾。
  • 如果将类文件放置在命名包中,则CLASSPATH的目录结尾包含完整包名称中的根包,即完整包名称中的第一个包。

CLASSPATH的默认值为点(.)。这意味着在当前目录查找类文件。

如果CLASSPATH找到当前目录中存在的类文件,则它将加载该类并使用它,即使另一个目录中也存在同名的类也不被影响。

2 PATH和CLASSPATH的区别

PATH CLASSPATH
PATH是环境变量。 CLASSPATH也是一个环境变量。
操作系统使用它来查找可执行文件(.exe)。 Application ClassLoader使用它来查找.class文件。
在PATH里写的包含.exe文件的目录。 在CLASSPATH里写的是包括所有包含.class和JAR文件的目录。
PATH环境变量一旦设置,就不能被覆盖。 可以通过对javac和java命令使用命令行选项-cp或-CLASSPATH来覆盖CLASSPATH环境变量。

3 如何设置Java的CLASSPATH

3.1 通过添加系统的环境变量

第一步:在桌面右击“计算机”图标,选择“属性”。

第二步:点击高级系统设置,在“高级”选项卡,点击下方“环境变量”按钮。

第三步:单击“新建”按钮,然后将变量名输入“CLASSPATH”,值输入:

.;C:\Program Files\Java\jdk1.8.0_31\lib\lib\dt.jar;C:\Program Files\Java\jdk1.8.0_31\lib\lib\tools.jar

其中dt.jar是关于java运行环境的类库;tools.jar是工具类库;

注意:在java5中,sun公司改进了JDK设计,JRE会自动搜索当前路径下的jar包,并自动加载dt.jar和tools.jar。所以从Java5开始,就不必再设置CLASSPATH环境变量了

3.2 通过命令行方式设置

在命令提示符中键入以下命令,然后按Enter。

set CLASSPATH=%CLASSPATH%;C:\Program Files\Java\jre1.8\lib\dt.jar;C:\Program Files\Java\jre1.8\lib\tools.jar; 

在上面的命令中,Set是一个内部DOS命令,它允许用户更改变量值。CLASSPATH是变量名。用百分号(%)括起来的变量是现有的环境变量,分号是分隔符。

推荐好课