java中path和classpath

简介: Path 路径,是java编译时需要调用的程序(如java,javac等)所在的地方; CLASSPATH的作用是指定查找类的路径:当使用java命令执行一个类(类中的main方法)时,会从classpath中进行查找当前运行class所依赖的其它class文件。

Path 路径,是java编译时需要调用的程序(如java,javac等)所在的地方;

CLASSPATH的作用是指定查找类的路径:当使用java命令执行一个类(类中的main方法)时,会从classpath中进行查找当前运行class所依赖的其它class文件。,
即CLASSPATH ->到哪里找需要执行的.class文件(程序依赖外面Jar,再细一点讲是依赖jar里面的class)。


Path
1. PATH命令可用来设置可执行文件(仅包括:.COM、.EXE及.BAT文件)的搜索路径。
当您运行一个可执行文件时,DOS会先在当前目录中搜索该文件,若找到则运行之;若找不到该文件,则根据PATH命令所设置的路径,顺序逐条地到各目录中搜索该文件;
2. PATH命令中的路径,若有两条以上,windows下各路径之间以一个分号“;”隔开,linux/unix下以":"分隔;
3、windows中默认的系统路径(Path)是C:\WINDOWS\System32\

CLASSPATH:
它是javac编译器的一个环境变量,是用来找正在运行class所依赖的class。
它的作用与import、package关键字有关。CLASSPATH有点像c\c++编译器中的INCLUDE路径的设置哦,是不是?当c\c++编译 器遇到include <iostream>这样的语句,它是如何运作的?哦,其实道理都差不多!搜索INCLUDE路径,检视文件!
当你自己开发一个package时,然后想要用这个package中的类;自然,你也得把这个package所在的目录设置到CLASSPATH中去!

CLASSPATH的设定,对JAVA的初学者而言是一件棘手的事。所以Sun让JAVA2的JDK更聪明一些。你会发现,在你安装之后,即使完全没有设定CLASSPATH,你仍然能够编译基本的JAVA程序,并且加以执行,是因为java会查找运行程序的当前目录

 

为了看看当前系统的环境变量,我们可以用如下的命令:

在Linux/Unix系统上,在shell命令符输入 env ,然后回车

在Windows系统中,在DOS窗口提示符输入 set ,然后回车

这样,我们就可以看到系统当中的所有环境变量,如果我们想看看单个变量的值呢?

在Linux/Unix系统上,在shell命令符输入 echo $变量名 ,然后回车

在Windows系统中,在DOS窗口提示符输入 set 变量 或者 echo %变量%,然后回车

如果要设置一个环境变量,可以用下面的命令:

在Linux/Unix系统上,在shell命令符输入 export 变量名="变量值" ,然后回车

在Windows系统中,在DOS窗口提示符输入 set 变量名="变量值" ,然后回车

这样,就设置好了。path和classpath环境变量的值都是一些有顺序的目录列表。告诉系统或者应用程序

到哪里去寻找它们需要的资源。这个目录列表是由一系列的分隔符分开的,Linux/Unix系统下分隔符是冒号“:”

windows系统中是分号“;”。如果,我们想在某个已经存在的环境变量值下加一些自己的值的话,可以这样:

Linux/Unix系统下: export CLASSPATH=$CLASSPATH:/path/to/program

Windows系统下: set CLASSPATH = %CLASSPATH%;c:\path\to\program

相关文章
|
4月前
|
Java 开发工具
开发工具系类 之 Cannot determine path to ‘tools.jar‘ library for 17 (D:/Program Files/Java/jdk-17.0.9)
这篇文章讲述了作者在升级JDK至17版本后遇到IDEA无法识别`tools.jar`的问题,并提供了两种解决方法:升级IDEA版本或降低JDK版本,并提供了相关版本的IDEA兼容性信息。
开发工具系类 之 Cannot determine path to ‘tools.jar‘ library for 17 (D:/Program Files/Java/jdk-17.0.9)
|
5月前
|
Java
关于idea报错:Cannot determine path to 'tools.jar' library for 17 (E:\java-jdk\jdk17)的解决办法
关于idea报错:Cannot determine path to 'tools.jar' library for 17 (E:\java-jdk\jdk17)的解决办法
|
5月前
|
算法 Java
Java语言实现最短路径算法(Shortest Path)
Java语言实现最短路径算法(Shortest Path)
68 3
|
7月前
|
XML Java Maven
nested exception is java.io.FileNotFoundException: class path resource [springmvc.xml] cannot be ope
nested exception is java.io.FileNotFoundException: class path resource [springmvc.xml] cannot be ope
198 0
nested exception is java.io.FileNotFoundException: class path resource [springmvc.xml] cannot be ope
|
6月前
|
Java 程序员
Java入门——JDK的组成、Java的跨平台、Path环境变量配置、Java_home环境变量
Java入门——JDK的组成、Java的跨平台、Path环境变量配置、Java_home环境变量
54 3
Java入门——JDK的组成、Java的跨平台、Path环境变量配置、Java_home环境变量
|
5月前
|
Java Maven
Class path contains multiple SLF4J bindings,后来找到的解决思路是idea2019.3必须用java11和idea2019.3版本,必须用applicatio
Class path contains multiple SLF4J bindings,后来找到的解决思路是idea2019.3必须用java11和idea2019.3版本,必须用applicatio
|
5月前
|
Java 应用服务中间件 API
java 启动查看jar包加载顺序并设置classpath
java 启动查看jar包加载顺序并设置classpath
419 0
|
6月前
|
数据采集 Java Linux
Java异常之【sun.security.validator.ValidatorException: PKIX path building failed: sun.security...】
Java异常之【sun.security.validator.ValidatorException: PKIX path building failed: sun.security...】
141 0
Java异常之【sun.security.validator.ValidatorException: PKIX path building failed: sun.security...】
|
5月前
|
安全 Java 开发者
Java中的Path类使用详解及最佳实践
Java中的Path类使用详解及最佳实践
|
6月前
|
Java Windows
java在Windows配置Path环境变量
java在Windows配置Path环境变量
103 0