Windows下安装JDK

Java Development Kit ( JDK ):  Java 语言的软件开发工具包,开发Java程序最基本的 工具包.
下载安装JDK
下载页面
http://www.oracle.com/technetwork/java/javase/downloads/index.html
注意:JDK和java EE sdk是不一样的,不要混淆。
JDK安装目录(路径用户自决定):D:\Program Files\Java\jdk1.x.x
JDK的环境变量的设置只需要两个环境变量:一个是(Windows操作系统环境变量)Path,另一个是:classpath

为什么要设置这两个
环境变量?
JAVA程序要最终执行, 除了写代码外, 需要经过编译和执行两个步骤. 编译和执行分别对应JDK中提供的javac.exe和java.exe两个命令(可在Dos命令行下运行).
设置Path变量是为了让操作系统找到指定的Java工具程序(以Windows来说就是找到 javac.exe和java.exe等命令 文件).
所以如果不想在DOS下手工运行Java或Javac,可以不设置Path环境变量。或者如果没有设置path环境变量,就需要每次都输入java.exe全路径名来执行它(类似 D:\Program Files\Java\jdk1.x.x\java ...)
javac的作用是将程序员写的Java代码 (.java ) 文件编译成字节码( .class) 文件。这个 .class 文件再由 java.exe命令执行.
在DOS下输入java -version回车,如果显示JDK的版本信息则 Path变量 设置成功。
 
为什么要配置classpath变量?
配置classpath变量,才能使得java解释器知道到哪里去找需要的类文件(包括
要执行的类, 引用的 标准类库和用户自定义类).标准类库是别人已经写好了的,我们只管使用。比如我们常用到 java.lang 包中的类,在配置classpath变量后被设为默认导入,所以在写程序时就不用import这个包了。那么这些标准类库在哪呢?在以JDK的lib目录下以jar为后缀的文件中:一个是dt.jar,一个是tools.jar,这两个jar包都位于%JAVA_HOME%/jdk1.x.x/lib目录下( %JAVA_HOME%代表java安装目录) ,所以通常我们会把这两个jar包加到我们的classpath环境变量的值为:.; C:\Program Files\Java\jdk1.x.x\lib\tools.jar; C:\Program Files\Java\jdk1.x.x\lib\dt.jar; (注意,CLASSPATH最前面是有个 “.”的,表示 当前目录
  (jar文件是zip 压缩格式 ,其中包括若干.class文件),每一路径中间必须以;作为分隔。   事实上 JDK 5.0以后默认就会到当前工作目录(上面的.设置),以及JDK的lib目录(这里假设是C:\Program Files\Java\jdk1.x.x\lib)中寻找Java程序。所以如果Java程序是在这两个目录中,则不必设置Classpath变量也可以找得到.

如果不设置 
classpath环境变量,又不想在命令行切换到类所在的目录, 则需要用到java命令的- classpath参数.例:
java -classpath F:\sendip\bin; F:\ sendip\lib\java_mail.jar com.wzr.SendIp

F:\sendip\bin为执行类所在目录;
F:\ sendip\lib\java_mail.jar为引用包所在目录;
com.wzr为 执行类所在的 包名,   SendIp为(包含main函数的)类名.
*****
 如果有2个jar中间还是用分号(;)分隔,如果有10个jar呢,都写上太麻烦了。这时可以使用java的D参数用
-Djava.ext.dirs=路径这种方式来解决
 和上例类似,事先把第三方类库都放到lib下
 
java -classpath F:\sendip\bin  -Djava.ext.dirs= F:\ sendip\lib\ com.wzr.SendIp
 
Path的值设置为你的JDK安装目录的bin目录的路径.作用是让操作系统能找到java.exe和javac.exe等执行程序.

Path:(加入bin路径)D:\Program Files\Java\jdk1.6.0_43\bin
classpath的值则为JDK安装目录下的jre目录下的lib文件夹的路径。作用是当执行类文件时告诉操作系统去哪找类文件.
classpath:(前面一定要加个点--意思是包括当前目录).;D:\Program Files\Java\jdk1.6.0_43\jre\lib
做个HelloWorld.java文件测试一下
public class HelloWorld{
public static void main (String[] args)
{
 System.out.println("Hello World!");
}
}
命令行编译运行:
javac HelloWorld.java
java HelloWorld
输出“Hello World!”就说明JDK安装成功了。

附:

Java执行环境本身就是一个平台,执行于这个平台上的程序是已编译完成的Java程序(Java 程序编译 完成之后,会以.class文件存在)。如果将Java执行环境比喻为操作系统,则设置Classpath的目的就是让Java执行环境找到指定的Java程序(也就是.class文件)。
如果所使用的JDK工具程序具有Classpath命令选项,则可以在执行工具程序时一并指定Classpath。例如:
javac -classpath classpath1;classpath2...其中classpath1、classpath 2是实际要指定的路径。也可以在命令符模式下执行以下的命令,直接设置 环境变量 ,包括Classpath变量(这个设置在下次重新打开命令符模式时就不再有效):
set CLASSPATH=%CLASSPATH%;classpath1;classpath2...总而言之,设置Classpath的目的,在于告诉Java执行环境,在哪些目录下可以找到您所要执行的Java程序(.class文件)。  

关于环境变量classpath与class_path的区别
java先找classpath,但是如果找不到的话他会看系统的环境变量class_path


lib\rt.jar 是JDK的核心库



附:
PATH and CLASSPATH
http://docs.oracle.com/javase/tutorial/essential/environment/paths.html
Setting the class path
http://docs.oracle.com/javase/7/docs/technotes/tools/windows/classpath.html

猜你喜欢

转载自asjava.iteye.com/blog/2197386