详解path和classpath的区别
path的作用
path是系统用来指定可执行文件的完整路径,即使不在path中设置JDK的路径也可执行JAVA文件,但必须把完整的路径写出来,如C:\Program Files\Java\jdk1.6.0_10\bin\javac TheClass.java。path是用来搜索所执行的可执行文件路径的,如果执行的可执行文件不在当前目录下,那就会依次搜索path中设置的路径;而java的各种操作命令是在其安装路径中的bin目录下,所以在path中设置了JDK的安装目录后就不用再把java文件的完整路径写出来了,它会自动去path中设置的路径中去找。
classpath的作用
classpath是指定你在程序中所使用的类(.class)文件所在的位置,就如在引入一个类时:import javax.swing.JTable这句话是告诉编译器要引入javax.swing这个包下的JTable类,而classpath就是告诉编译器该到哪里去找到这个类(前提是你在classpath中设置了这个类的路径);如果你想要编译在当前目录下找,就加上“.”,如:.;D:\Program Files\Java\jdk\,这样编译器就会到当前目录和D:\Program Files\Java\jdk\去找javax.swing.JTable这个类;还提下:大多数人都是用Eclipse写程序,不设classpath也没关系,因为Eclipse有相关的配置;
path和classpath区别:
下面以Java环境变量为例:
如果是Windows上,在计算机->属性->高级设置->环境变量:
JAVA_HOME=D:\Program Files\Java\jdk1.7.0_21 PATH=%JAVA_HOME%\bin;%PATH% CLASSPATH=.;%JAVA_HOME%\lib
看好了CLASSPATH中第一个".",这个代表当前目录。
如果在Linux上:
在你的环境中,通常我加在.bashrc文件中,你可以加在你的Profile文件中。
/usr/local/jdk 为你安装jdk的目录。
export JAVA_HOME=/usr/local/jdk export CLASSPATH=.:$JAVA_HOME/lib export PATH=$PATH:$JAVA_HOME/bin
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!