环境变量配置

来源:互联网 发布:秃鹰燕尾数据 编辑:程序博客网 时间:2024/05/02 01:15
最近我遇见极为初学者在为安装JDK和Tomcat之前的环境变量配置问题左右!其实网上收索的资料是不少,可是不免会遇到忽悠人的。这个对于初学者来说是很苦恼的,因为他们不知道对错,照搬你的经验! 
    其实我们为何不仔细了解一下为什么配置环境变量?它有什么作用? 
    我们在开发的时候需要引入很多的包,这些包我们是怎么引入的呢?可能会有人说有的程序就没见到要引包,比如很多人初学之时的Helloworld.java就没有。可是,我们不能忽略了隐含的lang包!简单点说,我们配置的path路经,它主要是引入JDK的/bin目录,classpath是指向类库文件。要运行的java存在于bin目录下,也就是说要想运行程序就必须指向bin这个目录。但是这个目录下却没有类库文件,就必须用classpath定义这个变量。JAVA_HOME这个变量简单点说就是让你省劲,这里面你只要配置JDK的安装路径就可以,比如JAVA_HOME=D:\Java\jdk6-api-zh_CN, 
path就可以写:"%JAVA_HOME%\bin",classpath=".;%JAVA_HOME%\tools.jar" 
    JAVA_HOME除了方便之外还有归一原则。当你JDK路径被迫改变的时候, 你仅需更改JAVA_HOME的变量值即可。第三方软件也会引用约定好的JAVA_HOME变量。如果某个软件不能够正常使用,也有可能是这个问题。它定义了一个系统常量。这个常量可以在其他地方用%JAVA_HOME%的方式引用,执行时会替换成它所表示的字符串。和Tomact并无关系! 
    classpath能够帮助java找到相应的.class文件,如果把.class文件改动位置的话再次执行这条.java命令会抛出:NoClassDefFindError的异常!它同样是告诉CMD这里有一些类库可以使用。如果调用javac命令,JVM就会在这个目录下去找需要用到的常用类库。 
    path为CMD指定一个程序引用,类似于为CMD建立一个快捷方式。当在cmd中输入命令时,cmd就会在PATH指定的地方去查询这个命令,并执行。 

JDK环境变量配置的步骤: 
1,我的电脑-->属性-->高级-->环境变量. 

2,配置用户变量: 
        a.新建 JAVA_HOME 
            D:\Java\jdk6-api-zh_CN (JDK的安装路径) 

        b.新建 PATH 
            %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin 

        c.新建 CLASSPATH 
            .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar 

3.测试环境变量配置是否成功: 
   开始-->运行--〉cmd 
   键盘敲入: javac    java 

   出现相应的命令,而不是出错信息,即表示配置成功! 
       你也可以写段小代码来测试:比如你的代码(Greetings.java)存放在:D:\testJDK,在命令窗口中d:/cd  testJDK/javac Greetings.java(如果没有任何提示则编译通过)/java Greetings/ 
--------------------------------------------------------------------------------- 
Tomact环境变量配置的步骤: 
1,我的电脑-->属性-->高级-->环境变量. 

2,配置系统变量: 
                a.新建TOMCAT_HOME 
                       D:\Java(Tomact安装路径) 
                  新建CATALINA_HOME 
                       D:\Java(Tomact安装路径) 
                  新建CATALINA_BASE 
                       D:\Java(Tomact安装路径) 
3,测试环境变量配置是否成功: 
       a. 窗口>>首选项>>MyEclipse>>Servers>>Tomcat>>Tomcat 6.x 
       b.单击Tomcat 6.x(不是 "+" )选择Tomcat6.0的路径. >>   选择Tomcat server 为   Enable   ( 否则,你配置了,看不见) 
       c.打开Tomcat 6.x 的子目录.   单击JDK   选择JDK的安装路径,即可. 
       d.在网页中输入http://localhost:8080,这时如果看到tomcat的欢迎页面的话说明安装成功了。(注意:一定要启动tomcat) 
       f.自己新建一个test.jsp文件,放在/Root目录下,在IE中访问http://localhost:8080/test.jsp,应该能够看到test.jsp文件的页面显示 

----------------------------------------------------------------------------\ 
jdk7.0配置 
Java环境变量配置 
  windows xp下配置JDK环境变量: 
  1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为D:\java\jdk1.5.0_08; 
  2.安装完成后,右击“我的电脑”,点击“属性”; 
  3.选择“高级”选项卡,点击“环境变量”; 
  4.在“系统变量”中,设置3项属性,JAVA_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则点击“编辑”,不存在则点击“新建”; 
  5.JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径D:\java\jdk1.5.0_08,此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,eclipse等都需要依*此变量); 
  Path使得系统可以在任何路径下识别java命令,设为: 
  %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin 
  CLASSPATH为java加载类(classorlib)路径,只有类在classpath中,java命令才能识别,设为: 
  .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar(要加.表示当前路径) 
  %JAVA_HOME%就是引用前面指定的JAVA_HOME; 
  6.“开始”->;“运行”,键入“cmd”; 
  7.键入命令“java-version”,“java”,“javac”几个命令,出现画面,说明环境变量配置成功; 
  8.好了,打完收工。下面开始你的第一个java程序吧。 
  几个java环境变量的含义和linux下的配置方法: 
  通常,我们需要设置三个环境变量:JAVA_HOME、PATH和CLASSPATH。 
  ◆JAVA_HOME:该环境变量的值就是Java所在的目录,一些Java版的软件和一些Java的工具需要用到该变量,设置PATH和CLASSPATH的时候,也可以使用该变量以方便设置。 
  ◆PATH:指定一个路径列表,用于搜索可执行文件的。执行一个可执行文件时,如果该文件不能在当前路径下找到,则依次寻找PATH中的每一个路径,直至找到。或者找完PATH中的路径也不能找到,则报错。Java的编译命令(javac),执行命令(java)和一些工具命令(javadoc,jdb等)都在其安装路径下的bin目录中。因此我们应该将该路径添加到PATH变量中。 
  ◆CLASSPATH:也指定一个路径列表,是用于搜索Java编译或者运行时需要用到的类。在CLASSPATH列表中除了可以包含路径外,还可以包含.jar文件。Java查找类时会把这个.jar文件当作一个目录来进行查找。通常,我们需要把JDK安装路径下的jre\lib\rt.jar(Linux:jre/lib/rt.jar)包含在CLASSPATH中。 
  PATH和CLASSPATH都指定路径列表,列表中的各项(即各个路径)之间使用分隔符分隔。在Windows下,分隔符是分号(;),而在Linux下,分隔符是冒号(:)。 
  三个Java环境变量在Windows和Linux下设置 
  在此之前,我们需要做个假设。假设JDK在Windows下的安装路径是C:\jdk\,在Linux下的安装路径是/usr/local/jdk/。那么,安装后的JDK至少会包括如下内容: 
  1.C:\jdk(/usr/local/jdk) 
  2.|--bin 
  3.|--demo 
  4.|--include 
  5.|--jre 
  6.||--bin 
  7.|`--lib 
  8.`--lib 
  9. 
  Java环境变量在Windows下设置 
  Windows下使用set命令设置环境变量,为了使每一次启动计算机都设置这些环境变量,应该在系统盘根目录下的autoexec.bat文件中进行设置,如: 
  10.setJAVA_HOME=C:\jdk 
  11.setPATH=%JAVA_HOME%\bin;C:\Windows;C:\Windows\Command 
  12.setCLASSPATH=%JAVA_HOME%\jre\lib\rt.jar;. 
  13. 
  有些版本的Windows不能用%变量名%来替换环境变量的内容,那么就只好直接写C:\jdk而不是%JAVA_HOME%了。另外,C:\Windows和C:\Windows\Command是Windows会自动加入路径的,所以可以从设置中去掉。如果在autoexec.bat中已经设置了PATH,那只需要将%JAVA_HOME%\bin加到原来设置PATH的那条语句中就行了。 
  CLASSPATH也可以根据需要设置或者加入其它的路径,比如你想把自己写的一些类放在C:\java中,就可以把C:\java也添加到CLASSPATH中去,setCLASSPATH=%JAVA_HOME%\jre\lib\rt.jar;C:\java;.。 
  注意,在CLASSPATH中包含了一个“当前目录(.)”。包含了该目录后,就可以到任意目录下去执行需要用到该目录下某个类的Java程序,即使该路径并未包含在CLASSPATH中也可以。原因很简单:虽然没有明确的把该路径包含在CLASSPATH中,但CLASSPATH中的“.”在此时就代表了该路径,如: 
  假设在C:\java目录下有可运行的类HelloJava.class,那么 
  14.C:\>setCLASSPATH=C:\jdk\jre\lib\rt.jar;.//设置CLASSPATH环境变量,注意最后有一个“.” 
  15.C:\>cdjava//转到C:\java目录 
  16.C:\java>javaHelloJava//运行HelloJava 
  17.Hello,Java.//运行结果 
  18.C:\java>_ 
  19. 
  Java环境变量在Linux下设置 
  Linux下使用“变量名=变量值”设置变量,并使用export命令将其导出为环境变量。为了使每一次登录都自动设置好这些变量,你需要在~/.bash_profile里或者~./bashrc里进行设置,如 
  20.exportJAVA_HOME=/usr/local/jdk 
  21.exportPATH=$JAVA_HOME/bin:$PATH 
  22.exportCLASSPATH=$JAVA_HOME/jre/lib/rt.jar:. 
  23. 
  设置PATH时用的$JAVA_HOME是指替换变量JAVA_HOME的值到$JAVA_HOME所在位置。如上句实际就是exportPATH=/usr/local/jdk/bin:$PATH。这句中$PATH也是同样的作用,不过这里的PATH是指以前设置的PATH变量的值,而非本次设置PATH变量的值。 
  注意,在CLASSPATH中包含了一个“当前目录(.)”。包含了该目录后,就可以到任意目录下去执行需要用到该目录下某个类的Java程序,即使该路径并未包含在CLASSPATH中也可以。原因很简单:虽然没有明确的把该路径包含在CLASSPATH中,但CLASSPATH中的“.”在此时就代表了该路径,例如 
  假设在/home/fancy/java目录下有可运行的类HelloJava.class,那么 
  24.[fancy@matrixfancy]$exportCLASSPATH=/usr/local/jdk/jre/lib/rt.jar:.//设置CLASSPATH,注意最后的“.” 
  25.[fancy@matrixfancy]$cd~/java//转到/home/fancy/java 
  26.[fancy@matrixjava]$pwd//显示当前目录 
  27./home/fancy/java//当前目录是/home/fancy/java 
  28.[fancy@matrixjava]$javaHelloJava//运行HelloJava 
  29.Hello,Java//运行结果 
  30.[fancy@matrixjava]$_ 
  31. 
  实例分析 
  只是操作系统不同,略有差别。 
  两个例子都提到一个“可运行的类”,它是指包含了publicstaticvoidmain(String[]args)方法的类,这将在下一章HelloJava一节中详述。例中的CLASSPATH均未包含HelloJava.class所在的目录(C:\java,/home/fancy/java),但是均包含了当前目录(.)。因此转到包含HelloJava.class的目录下去执行javaHelloJava,在Java寻找到CLASSPATH中的“.(当前目录,C:\java,/home/fancy/java)”时,找到了HelloJava.class,运行成功。 
--------------------------------------------------------------------------------