PATH、CLASSPATH和JAVA_HOME的区别及作用

我们首先明确下三者的概念

  • PATH--PATH指定了可执行的二进制文件的位置。例如:我们添加了JDK或者JRE的目录,这样我们就可以直接使用这些目录下的命令却不需要指定这些命令的绝对路径;
  • CLASSPATH--维基百科的定义是:Classpath是Java虚拟机或Java编译器中的一个参数,用于指定用户定义的类和包的位置。 可以在命令行上或通过环境变量进行设置;
  • JAVA_HOME—一般将其指向JDK的安装目录,许多IDE需要依靠它来找到JDK的安装目录,如果没有这个变量,可能会找不到javac等可执行文件。

三者之间没有什么必然的联系,如果硬要说有联系的话,那么我们通常是通过JAVA_HOME这个变量来方便地指定PATH和CLASSPATH,比如我的JAVA_HOME是这么配置的:
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home
那么我的PATH可以这么配置:
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH可以这么配置:
CLASS_PATH="$JAVA_HOME/lib"

JDK1.5之后好像已经不需要再配置PATH和CLASSPATH了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容