如何在 Java 中设置CLASSPATH类路径

本文详细介绍了如何在Java中设置类路径,包括将类路径设置为环境变量和通过命令行参数传递。讲解了Windows和Linux/Unix环境下设置CLASSPATH的方法,以及如何添加单个或多个jar文件、类文件夹,以及如何清除类路径。强调了类路径顺序的重要性,并提供了验证和清除类路径的命令。建议将JAR文件和应用程序类组织在同一根目录下,以简化类路径管理。
摘要由CSDN通过智能技术生成

了解如何在 Java 中将类路径设置为环境变量并作为命令行参数传递。在任何 Java 应用程序的运行期间,CLASSPATH是一个参数,它告诉 JVM 在哪里查找类和包。

  • 类路径的默认值为“ .” (dot),表示仅在当前目录中搜索依赖项。
  • 指定CLASSPATH环境变量或-cp命令行开关会覆盖此值。
  • 指定多个类路径条目的顺序很重要。Java 解释器将按照它们在类路径变量中出现的顺序在目录中查找类。

Java 类路径分隔符是特定于操作系统的。

Windows – [分号]
Linux/Unix – [冒号]

1.设置CLASSPATH为环境变量

当您设置了应用程序运行时始终需要的 jar 文件的位置后,最好将它们添加到机器的环境变量'CLASSPATH'中。

在应用程序运行期间,应用程序类加载器将始终扫描此变量中指定路径的 jar 文件和类。

要设置CLASSPATH环境变量,请在您的机器中找到用户环境变量的位置并添加存储 Jar 文件的所有路径。在不同的两个文件夹、jar 文件或类之间使用分隔符。

您可以通过以下方式找到用户环境变量窗口-

  1. 在桌面上,右键单击计算机图标。
  2. 从上下文菜单中选择属性。
  3. 单击高级系统设置链接。
  4. 单击环境变量。在System Variables部分中,找到CLASSPATH环境变量并选择它。点击编辑。如果CLASSPATH环境变量不存在,单击New
  5. 添加用分隔符分隔的所有文件夹。单击确定单击OK关闭所有剩余的窗口。

系统属性

如果您是第一次创建CLASSPATH ,则需要在Windows 10中指定变量名称的名称。使用(点)表示当前目录'.'

2. 从命令行设置 CLASSPATH

使用-classpath参数从命令提示符/控制台设置类路径。使用下面给定的命令为不同的要求设置类路径。

假设我们有一个名为dependencyJAR 文件和其他类的文件夹。

2.1。在类路径中添加单个 jar 文件

下面的语法示例将在 classpath 中添加单个 jar 文件

添加单罐
//WINDOWS
$ set CLASSPATH=.;C:\dependency\framework.jar
 
//Linux/Unix
$ export CLASSPATH=.:/dependency/framework.jar

2.2. 在类路径中添加多个 jar 文件

下面的语法示例将在 classpath 中添加多个 jar 文件。为此,只需使用操作系统的分隔符(;:)作为为 CLASSPATH 指定的位置之间的分隔符。

添加目录中存在的所有 JAR 文件,请使用通配符'*')。

添加多个罐子
//WINDOWS
$ set CLASSPATH=C:\dependency\framework.jar;C:\location\otherFramework.jar       
$ set CLASSPATH=C:\dependency\framework.jar;C:\location\*.jar
 
//Linux/Unix
$ export CLASSPATH=/dependency/framework.jar:/location/otherFramework.jar  
$ export CLASSPATH=/dependency/framework.jar:/location/*.jar

2.3. 将多个类添加到类路径

很多时候,您可能还需要在类路径中添加单独的类。为此,只需添加 classfile 所在的文件夹。例如,假设您想要包含在类路径.class中的文件夹中有五个文件。location

添加类
//WINDOWS
$ set CLASSPATH=C:\dependency\*;C:\location
 
//Linux/Unix
$ export CLASSPATH=/dependency/*:/location

作为最佳实践,始终将所有 JAR 文件和应用程序类组织在一个根文件夹中。这可能是应用程序的工作区。

请注意,CLASSPATH 中包含的子目录不会被加载。为了加载包含在子目录中的文件,必须在 CLASSPATH 中明确列出这些目录和/或文件。

2.4. 清除类路径

如果您的 CLASSPATH 环境变量设置为不正确的值,那么您可以取消设置 CLASSPATH 并为其指定空值。

清除类路径
set CLASSPATH=

3.在Java中使用'-classpath'或'-cp'选项执行程序

除了将类路径设置为环境变量之外,您还可以在使用–classpath选项或–cp选项启动应用程序时将其他类路径传递给 Java 运行时。

使用.(点)将当前路径包含到.class生成文件的类路径中。

类路径参数
$ javac –classpath C:\dependency\framework.jar MyApp.Java
$ java –classpath .;C:\dependency\framework.jar MyApp

4. 如何查找和打印CLASSPATH价值

任何时候您希望验证CLASSPATH变量中的所有路径条目,都可以使用echo命令进行验证。

验证类路径
//Windows
c:/> echo %CLASSPATH%
 
//Linux/Unix
$ echo $CLASSPATH

如果 CLASSPATH 未设置,您将收到CLASSPATH: Undefined variable error (Solaris or Linux) 控制台或在 Windows 命令提示符中打印%CLASSPATH% 。

快乐学习!!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值