想在当前路径下去运行非当前路径下的.class文件(即java可执行文件),亦即可在任意目录下都可以执行java程序。
比如: 若 D:\Java\day01\set classpath=C:\mycode 后面没有分号, 该命令的意思是将java的运行文件所在路径告诉系统,则虚拟机在运行该类时就会到指定的目录中查找.class文件,若没找着,会报错; 若没有配置classpath路径时,虚拟机就会在当前路径下查找类文件,若没找着,会报错。
若 D:\Java\day01\set classpath=C:\mycode; 后面加了个分号的话, 则表示虚拟机在运行该类时就会到指定的目录中查找.class文件,若没找着,虚拟机就继续会在当前路径下查找.class文件,若再没找着,才会报错。
若 D:\Java\day01\set classpath=.;C:\mycode 若要想找两个路径(或两个路径以上时),且需要在当前目录下查找时,用“.”点代表当前路径(即把隐式明确显示出来,这样才会阅读性强,别人看的很清楚)。
若在当前目录下找不着类文件原因有下: 1、类名写错. 2、设置系统变量classpath了(一劳永逸型),虚拟机根本就没找当前目录,而找的是指定的路径。 如何解决呢?使用查看命令 set classpath 查看下,看是否设置了,想改的话,可以作临时设置即可,即 set classpath=.;\%classpath%;也可以改掉系统变量里面的classpath路径。