你的位置:首页 > Java教程

[Java教程]java环境变量配置


  本文借鉴于他人

  学习java的第一步就要搭建java的学习环境,首先是要安装JDK,JDK安装好之后,还需要在电脑上配置"JAVA_HOME"、"path"、"classpath" 这三个环境变量才能够把java的开发环境搭建好。在没安装过jdk的环境下,path环境变量是系统变量,本来存在的,而JAVA_HOME和classpath是不存在的。

  首先配置JAVA_HOME变量,右击我的电脑属性高级系统设置环境变量,新建一个变量名为JAVA_HOME,变量值为jdk安装目录(例如:D:\Java\jdk1.7.0)的环境变量,建好后在系统环境变量中会多出一个“JAVA_HOME”变量。

  其次配置path变量,系统环境变量中找到path变量(在Windows下,环境变量不区分大小写),点击【编辑】按钮会弹出编辑系统环境的对话框,path变量值中设置有很多目录,可以看到目录之间是用“;”(分号)隔开的,所以我们将%JAVA_HOME%\bin添到其中是记得用分号隔开,然后path环境变量配置完成。

  最后我们配置classpath变量,设置Classpath的目的,在于告诉Java执行环境,在哪些目录下可以找到您所要执行的Java程序(.class文件),关于这个ClassPath变量,其实可以不用配置了,在网上经常看到Classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\toos.jar,但学习java这么久发现,不配置ClassPath也不影响java项目的开发和运行的。

  附:JAVA_HOME变量、Path变量、ClassPath变量、系统变量和用户变量区别的说明

  JAVA_HOME变量

  一、为了方便引用,比如,JDK安装在D:\Java\jdk1.7.0目录里,则设置JAVA_HOME为该目录路径, 那么以后要使用这个路径的时候, 只需输入%JAVA_HOME%即可, 避免每次引用都输入很长的路径串; 
  二、归一原则, 当JDK路径被迫改变的时候, 仅需更改JAVA_HOME的变量值即可。
  三、第三方软件会引用约定好的JAVA_HOME变量, 典型的就是tomcat服务器,如果不配置JAVA_HOME变量,那么tomcat服务器根本运行不起来

  Path变量

  操作系统用path的路径来找可执行程序(.exe程序),在windows下当我们敲任何一个命令时,实际上就是在执行一个可执行文件,如输入notepad命令就可以打开一个记事本,实际上是执行了c:\Windows下的notepad.exe这个可执行文件,和用鼠标双击notepad.exe后能够打开一个记事本的效果是一样的。

  当在命令窗口敲一个命令时,系统就会去自动寻找这个命令对应的可执行文件(.exe),如果这个文件不存在,就当然无法执行这个命令了。这个可执行文件的根目录必须设置在path环境变量中。

  直接输入“echo %path%”命令就可以显示设置的path环境变量的所有根目录了,只要是根目录里面存在相应的.exe文件,敲入命令时就能执行这个相应的.exe文件。因为notepad.exe所在的Windows目录已经添加到了Path环境变量中了,这就解释了为什么输入命令notepad就可以打开一个记事本,所以前面配置java开发环境时,将%JAVA_HOME%\bin添加到Path变量中的目的就是希望可以在命令行窗口下使用javac和java这两个命令来执行javac.exe和java.exe这两个可执行程序。

  Classpath变量

  使用javac命令编译.java文件时,如果需要其他的类,也是通过classpath去找的,使用java命令执行.class文件时,执行的.class文件是通过classpath去找的。classpath表示的是要查找的类所在的路径。

  系统变量和用户变量区别

  环境变量中有两种变量,一种是用户变量,另一种是系统变量,那么这两种变量有什么区别呢?用户变量,顾名思义,是针对某一个特定的用户的,只对特定的用户有效,而系统变量,则对任何用户都有效。

  有时候我们会在用户变量中配置Path变量,这时没有添加用户变量Path前,Path变量的值就是系统变量Path里面设置的值;添加用户变量Path后,Path变量的值=系统变量Path里面设置的值+用户变量Path中设置的值。