配置path环境变量变的目的是什么?
控制台可以在任意的路径下都可以找到java的开发工具。
为了说明几个JDK环境变量的作用,这里先给出环境变量的定义
环境变量:
环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数,比如临时文件夹位置和系统文件夹位置等。这点有点类似于DOS时期的默认路径,你运行某些程序时除了在当前文件夹中寻找外,还会到设置的默认路径中去查找。简单地说这里的“Path”就是一个变量,里面存储了一些常用命令所存放的目录路径。
目前path环境变量除了保存了我们自己配置的信息以外,还有系统自带的信息,如果一旦不不小心删除了path环境变量信息,那么就可能导致系统部分功能无法使用。
尽量避免修改的path环境变量信息。
如何尽量避免频繁修改path环境变量?
解决办法:新建一个环境变量保存jdk安装目录会发生变化的部分,然后在path环境变量上引用新环境变量所保存的信息。
由于可能因为更新JDK版本,可能出现安装路径变动的情况,为了避免频繁改动path环境变量,我们可以在外部新建一个Java的变量来给path引用,当JDK安装路径出现变化时,不用去修改path里面的环境变量。
1.首先需要新建一个JAVA_HOME变量,值为JDK的安装路径。JAVA_HOME指向JDK的安装目录;Eclipse/Tomcat等JAVA开发的软件就是通过搜索JAVA_HOME变量来找到并使用安装好的JDK,如果你没有配置JAVA_HOME变量,你会发现Tomcat无法正常启动。如下图:
2.编辑path,在path中添加一条环境变量,值为:%JAVA_HOME%\bin。bin目录存放的是java的开发工具,双%中间加JAVA_HOME的意思是path引用JDK的安装路径,这样不论JDK的安装路径如何改变,只需要更改JAVA_HOME的值,path的环境变量始终指向JDK的安装路径,不用频繁修改path环境变量,避免对path环境变量造成意外修改。PATH指向搜索命令路径,如果没有配置这个PATH变量指向JDK的命令路径,会发现在命令行下无法运行javac、java等命令。如下图:
3.配置CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
CLASSPAH指向类搜索路径,.;表示在当前目录搜索,由于java程序经常要用到lib目录下的dt.jar和tools.jar下类,所以这两项也要加进来,如果在命令行编译和运行的程序还需要用到第三方的jar文件,则也需要把第三方JAR文件加入进来。
4.用户变量是针对某个用户设置的相关环境参数,系统变量是针对所有用户设置的环境参数;那么如果在用户变量和系统变量中都有某个参数的配置,哪个优先?
系统变量优先.
---首先把系统变量中关于java的环境参数全部移除.
---javac不是内部或外部命令,出现这种情况是因为你没有在path变量中配置javac命令所在的路径?那么操作系统找不到,所以报这个错误.
Path变量已经存在,我们只需要在该变量值的前面加入javac命令所在的目录即可D:\Java\jdk1.7.0\bin,注意和后面的路径之间要有一个分号.
---从jdk1.4开始,已经不需要配置CLASSPATH这个环境变量了.以前我们配置这个变量,它的值是(.;D:\Java\jdk1.7.0\lib),表示(java HelloWorld)运行时需要这些底层的类和接口,那么系统可以马上找到.现在不需要,因为jdk可以自动找到.
----CLASSPATH的值之所以加一个.,表示搜索当前目录,这样不用担心找不到HelloWorld.class,然后后面紧跟着lib目录,因为要调用这些底层类和接口,所以配置了两个路径.
----配置JAVA_HOME可以很方便的实现jdk安装目录的变更.
需求: 在现实开发中有时候jdk版本的信息有时候只会使用一次或者几次就不再使用了,比如开发了一个软件,需要在java5,java6,java7中测试,那么如果是这种需求,我们一般都是通过set命令配置临时环境变量。
临时环境变量就是仅对于当前控制台窗口起作用,窗口一旦关闭,那么配置的临时环境变量信息会发生消失。
set命令的用法:
set 查看所有的环境变量信息。
set 环境变量的名字 查看指定的环境变量信息。
set 环境变量名字 = 路径信息 设置指定的环境变量信息。(仅对当前控制台有效,再开一个,原本信息不变)
set 环境变量名字 = 清空指定的环境变量信息。
set 环境变量名字 = 新路径;%环境变量名字% 在原有的基础上添加新的路径信息。
想要在原有环境变量值基础上添加新值呢?
首先,通过%变量名%操作符获取到原有环境变量的值。
然后加上新值后在定义给该变量名即可
举例:给path环境变量加入新值
set path=新值;%path%
set path=f:\a\;%path%;
注意:这种配置方式只在当前dos窗口有效。窗口关闭,配置消失。
注意: 以后大家但凡看到是set命令设置的环境变量信息,都是临时环境变量信息。