4年前 (2021-02-15)  Java系列 |   抢沙发  568 
文章评分 0 次,平均分 0.0

Java中PATH与CLASSPATH的区别

PATH和CLASSPATH是在配置java环境时要处理的两个最常见的环境变量。遗憾的是,大多数java开发人员都不知道路径PATH和类路径CLASSPATH的概念。所以今天,在本教程中,我将分享什么是路径,什么是类路径,以及它们之间的区别。另外,我还将告诉您如何在windows和linux/unix中设置PATH和CLASSPATH。

什么是路径PATH

PATH是一个环境变量,操作系统使用它来定位exe文件(.exe)或java二进制文件(javajavac命令)。

什么是类路径CLASSPATH

CLASSPATH也是一个环境变量,应用程序ClassLoader使用它来定位和加载.class文件。类路径设置用于定位在另一个目录中找到的.class文件。

java中路径与类路径的区别

1. 定义:PATH是一个环境变量。它被操作系统用来查找可执行文件(.exe)或者换句话说java二进制文件(java或javac)。

CLASSPATH也是应用程序ClassLoader用来定位和加载.class文件(编译的java字节码)的环境变量。

2. 设置:为了设置路径,需要在PATH环境变量中包含JDK_HOME/bin目录。

为了设置类路径,您需要根据应用程序的需要包括包含.class文件和jar文件的所有目录。

3. Overridden:PATH环境变量一旦设置,其值就不能通过java设置被重写。

CLASSPATH环境变量可以通过对javacjava命令使用命令行选项-cp-classpath来重写。

4. 用法:操作系统(Windows和Linux)使用PATH在shell中执行命令或查找任何二进制文件。

CLASSPATH类路径仅由应用程序类加载器用于加载类文件。

以上是要点,您需要记住解决NoClassDefFoundErrorClassNotFoundException等错误。现在我将分享如何在Windows和Linux/Unix中设置路径和类路径。

如何在Windows和Linux/Unix中设置路径和类路径

在Windows中设置路径PATH和类路径CLASSPATH的命令

 PATH :       set PATH=%PATH%;C:\Program Files\Java\JDK1.8.20\bin
CLASSPATH :   
set CLASSPATH=%CLASSPATH%;C:\Program Files\Java\JDK1.8.20\lib

Linux/Unix中设置路径和类路径的命令

PATH :        export PATH=${PATH}:/opt/Java/JDK1.8.20/bin
CLASSPATH :   
export CLASSPATH=${CLASSPATH}:/opt/Java/JDK1.8.20/lib

关于CLASSPATH类路径需要记住的要点:

1. 类路径CLASSPATH的默认值是点“.”,这意味着只有当前目录是可用的已搜索。如果指定CLASSPATH变量或-cp命令行开关将覆盖此值。

2. 如果类路径CLASSPATH找到当前目录中存在的类,则它将加载并使用该类,而不考虑类路径中还包含的另一个目录中存在的同名类。

概述:Java中PATH和CLASSPATH的区别:

PATH CLASSPATH
定义 操作系统查找可执行文件(.exe)或java二进制文件(javajavac命令) 应用程序类加载器,用于根据应用程序的需要加载和定位.class文件和jar文件。
重写 路径PATH一旦设置就不能通过java设置覆盖 类路径CLASSPATH值可以通过对javajavac命令使用命令行选项-cp-classpath来重写。
使用 路径PATH由操作系统使用 类路径CLASSPATH由应用程序类加载器使用
设置 为了设置路径,需要在PATH环境变量中包含JDK_HOME/bin目录。  为了设置类路径,您需要根据应用程序的需要包括包含.class文件和jar文件的所有目录。

 

 

除特别注明外,本站所有文章均为老K的Java博客原创,转载请注明出处来自https://javakk.com/1527.html

关于

发表评论

表情 格式

暂无评论

登录

忘记密码 ?

切换登录

注册