Java CLASSPATH 设置

在程序运行期间,CLASSPATH是JVM用于查找class和package路径的变量,可以通过环境变量或者命令行方式进行设置。

举例:

假设我们的Jar包在dependency目录下,class文件在location目录下:


在CLASSPATH加上Jar文件路径

  • Windows
set CLASSPATH=C:\dependency\framework.jar
set CLASSPATH=C:\dependency\framework.jar;C:\location\otherFramework.jar
set CLASSPATH=C:\dependency\*;C:\location\*

或:

javac –classpath C:\dependency\framework.jar
javac –classpath C:\dependency\framework.jar;C:\location\otherFramework.jar
  • Linux/Unix
export CLASSPATH=/dependency/framework.jar
export CLASSPATH=/dependency/framework.jar;/location/otherFramework.jar
export CLASSPATH=/dependency/*;/location/*

或:

javac –classpath /dependency/framework.jar
javac –classpath /dependency/framework.jar;/location/otherFramework.jar

在CLASSPATH加上class文件路径

  • Windows
set CLASSPATH=C:\dependency\*;C:\location
  • Linux/Unix
export CLASSPATH=/dependency/*;/location

【总结】

结合以上翻译及看过的其他资料做如下总结:

CLASSPATH

java test.class

用于查找类文件编译成功后的class文件。

需要注意的是:

  • 使用set命令的设置为临时设置,永久配置为
CLASSPATH=C:\dependency\*;C:\location
  • 没有设置CLASSPATH时,java启动JVM后,会在当前目录下寻找class文件。设置后会在指定目录下寻找文件,至于是否还在当前目录下查找,包含两种情况:
  1. 如果CLASSPATH的路径结尾有 “;”,如果没有在指定路径下找到运行的类,则会在当前目录再找一次。

  2. 如果CLASSPATH的路径结尾没有 “;”,则不会再在当前目录下查找。

    *一般不要在路径末尾加上“;”,这样一旦在指定路径下没有对应文件,应该报错,方便debug。

另一种变量JAVA_HOME

是用来查找编译java文件的运行程序的路径,即使用java\javac等命令时需要添加的变量设置

javac test.java

设置方法为:
JAVA_HOME=%安装路径%\Java\jdk
path=%JAVA_HOME%\bin

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值