path与classpath的差别
Posted wzzkaifa
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了path与classpath的差别相关的知识,希望对你有一定的参考价值。
1.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中设置的路径中去找。
2.classpath的作用
classpath是指定你在程序中所使用的类(.class)文件所在的位置。就如在引入一个类时:import javax.swing.JTable这句话是告诉编译器要引入javax.swing这个包下的JTable类,而classpath就是告诉编译器该到哪里去找到这个类(前提是你在classpath中设置了这个类的路径);假设你想要编译在当前文件夹下找,就加上“.”,如:.;C:\Program Files\Java\jdk\,这样编译器就会到当前文件夹和C:\Program Files\Java\jdk\去找javax.swing.JTable这个类;还提下:大多数人都是用Eclipse敲代码。不设classpath也没关系,由于Eclipse有相关的配置;
path是os用
classpath java用
path里面不光有Java的bin。还能够包括更多的,tc啊,masm阿,仅仅要在path中设了这些环境的路径,你在dos下的不论什么路径上都能够调用这些路径下的命令。
classpath是java专用的查找类的路径
系统变量是环境变量的一种,环境变量一种仅本用户适用。还有一种即系统变量整个系统的用户都适用,两者都能够在使用应用程序时提供快捷.一般在编辑java文件或者C#文件时须要改动,设计到多个目录之间的切换时也能够依据自己的须要设置.
简单的说就是。假设设置系统变量和用户变量。都叫做环境变量设置。设置系统变量时。该系统的全部帐号的用户都能够使用,可是设置用户变量时,其它的帐号登陆时就不一定能够使用。
以下以java环境变量为例设置方法:
1、假设是Win95/98,在\autoexec.bat的最后面加入例如以下3行语句:
JAVA_HOME=c:\j2sdk1.4.1
PATH=%JAVA_HOME%\bin;%PATH%
CLASSPATH=.;%JAVA_HOME%\lib
看好了CLASSPATH中第一个".",这个代表当前文件夹,非常多人HelloWorld没有执行起来大多是这个原因。
2、假设是Win2000或者XP。使用鼠标右击"我的电脑"->属性->高级->环境变量
系统变量->新建->变量名:JAVA_HOME 变量值:c:\j2sdk1.4.1
系统变量->新建->变量名:CLASSPATH 变量值:.;%JAVA_HOME%\lib
系统变量->编辑->变量名:Path 在变量值的最前面加上:%JAVA_HOME%\bin;
CLASSPATH前面的那个"."和上面的意义是一样的。
3、假设是Linux用户
在你的环境中,通常我加在.bashrc文件里。你能够加在你的Profile文件里。
/usr/local/jdk 为你安装jdk的文件夹。
export JAVA_HOME=/usr/local/jdk
export CLASSPATH=.:$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin
以上是关于path与classpath的差别的主要内容,如果未能解决你的问题,请参考以下文章
Spring Spring配置文件中classpath和classpath*的区别