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的差别的主要内容,如果未能解决你的问题,请参考以下文章

path与classpath区别(转)

Spring Spring配置文件中classpath和classpath*的区别

即使所需的 JAR 在 Bundle-classpath 中,OSGI 类也不可见

linux path 与 classpath 区别

JAVA 工程的各种路径问题, Eclipse集成问题

springboot 1.5.2 thymeleaf 添加templates 静态资源访问路径