Classpath是javac编译器的一个环境变量。它的作用与import、package关键字有关。当你写下improt java.util.*时,编译器面对import关键字时,就知道你要引入java.util这个package中的类;但是编译器如何知道你把这个package放在哪里了呢?所以你首先得告诉编译器这个package的所在位置;如何告诉它呢?就是设置CLASSPATh,如果java.util这个package在c:\jdk\ 目录下,你得把c:\jdk\这个路径设置到CLASSPATH中去!当编译器面对import java.util.*这个语句时,它先会查找CLASSPATH所指定的目录,并检视子目录java\util是否存在,然后找出名称吻合的已编译文件(.class文件)。如果没有找到就会报错!如果是.class文件则用classPath配置.这样就可以再任意目录下去执行这个.class文件. 虚拟机在查找class文件时如果没有设置classpath会在当前路径查找.临时配置classpath时,如果设置 classPath时写";"的情况下,如果在指定的classPath路径下没有找到要运行的文件(比如文件被删除), 那么就会在当前目录下找该文件,如果不加";"的话,只会在classPath中找。但最近的jdk版本无需配置classpath。 |