JDK环境配置

1、jdk下载

JDK最新版下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

2、jdk安装

安装JDK的过程全自动化,安装目录保持默认路径(个人习惯,方便记忆)

安装过程中提示安装JRE,点击下一步安装即可,Jre和jdk建议放在同一个目录下。

默认路径:C:Program FilesJava(64位)C:Program Files (x86)Java(32位)

3、jdk环境变量

安装后更改环境变量 右击计算机-》属性-》高级系统设置-》环境变量

注意:一个环境变量可以对应多条目录,用户环境变量是只有在当前用户有效,系统环境变量是所有用户都有效。

变量名path 添加路径C:Program FilesJavajdk1.8.0_144in;(后面数字不同版本有所变化,我这个是1.8)

新建变量classpath 添加路径 .; C:Program FilesJavajre1.8.0_144lib ((格式:.:路径)

注意:如果变量名已存在变量,建议在已有路径最后加英文;后,将自己的路径添加到最后。;在环境变量中有分割多个路径的作用。

安装后验证jdk(dos(CMD)下输入java指令测试)

JDK的环境变量配置到这就结束了,有兴趣继续了解JDK的组成的可以继续往下阅读。

JDK (Java Development Kit)是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库(rt.jar);简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。不论什么Java应用服务器实质都是内置了某个版本的JDK.最主流的JDK是Sun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了自己的JDK,例如IBM公司开发的JDK,BEA公司的Jrocket,还有GNU组织开发的JDK等等。其中IBM的JDK包含的JVM(Java Virtual Machine)运行效率要比Sun JDK包含的JVM高出许多。而专门运行在x86平台的Jrocket在服务端运行效率也要比Sun JDK好很多。

作为JDK实用程序,工具库中有七种主要程序。

◆Javac:Java编译器,将Java源代码转换成字节码。

◆Java:Java解释器,直接从类文件执行Java应用程序字节代码。

◆appletviewer:小程序浏览器,一种执行HTML文件上的Java小程序的Java浏览器。

◆Javadoc:根据Java源码及说明语句生成HTML文档。

◆Jdb:Java调试器,可以逐行执行程序,设置断点和检查变量。

◆Javah:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件。

◆Javap:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。

JDK目录结构:

bin:最主要的是编译器(javac.exe)

include:java和jvm交互用的头文件

lib:类库

jre:java运行环境

JRE(Java Runtime Environment,Java运行环境),运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库。是Sun的产品,包括两部分:JavaRuntimeEnvironment和JavaPlug-inJavaRuntimeEnvironment(JRE)是可以在其上运行、测试和传输应用程序的Java平台。它包括Java虚拟机、Java平台核心类和支持文件。它不包含开发工具——编译器、调试器和其它工具。JRE需要辅助软件 ——JavaPlug-in——以便在浏览器中运行applet.J2RE是Java2 Runtime Environment,即Java运行环境,有时简称JRE.如果你只需要运行Java程序或Applet,下载并安装它即可。如果你要自行开发 Java软件,请下载JDK.在JDK中附带有JRE.注意由于Microsoft对Java的支持不完全,请不要使用IE自带的虚拟机来运行 Applet,务必安装一个JRE或JDK.

JRE是Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。

如果安装了JDK,会发同你的电脑有两套JRE,一套位于 C:Program FilesJavajdk****jre 另外一套位于 C:Program FilesJavajre1.5.0_15 目录下,后面这套比前面那套少了Server端的Java虚拟机,不过直接将前面那套的Server端Java虚拟机复制过来就行了。而且在安装JDK可以选择是否安装这个位于 C:Program FilesJava 目录下的JRE。如果你只安装JRE,而不是JDK,那么只会在 C:Program FilesJava 目录下安装唯一的一套JRE。

JRE的地位就象一台PC机一样,我们写好的Win32应用程序需要操作系统帮我们运行,同样的,我们编写的Java程序也必须要JRE才能运行。所以当你装完JDK后,如果分别在硬盘上的两个不同地方安装了两套JRE,那么你可以想象你的电脑有两台虚拟的Java PC机,都具有运行Java程序的功能。所以我们可以说,只要你的电脑安装了JRE,就可以正确运行Java应用程序。

1、为什么Sun要让JDK安装两套相同的JRE?

这是因为JDK里面有很多用Java所编写的开发工具(如javac.exe、jar.exe等),而且都放置在 lib ools.jar 里。从下面例子可以看出,先将tools.jar改名为tools1.jar,然后运行javac.exe,显示如下结果: Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/tools/javac /Main 这个意思是说,你输入javac.exe与输入 java -cp c:jdklib ools.jar com.sun.tools.javac.Main 是一样的,会得到相同的结果。从这里我们可以证明javac.exe只是一个包装器(Wrapper),而制作的目的是为了让开发者免于输入太长的指命。而且可以发现lib目录下的程序都很小,不大于2 9K,从这里我们可以得出一个结论。就是JDK里的工具几乎是用Java所编写,所以也是Java应用程序,因此要使用JDK所附的工具来开发Java程序,也必须要自行附一套JRE才行,所以位于C:Program FilesJava目录下的那套JRE就是用来运行一般Java程序用的。

2、如果一台电脑安装两套以上的JRE,谁来决定呢?

这个重大任务就落在java.exe身上。Java.exe的工作就是找到合适的JRE来运行Java程序。 Java.exe依照底下的顺序来查找JRE:自己的目录下有没有JRE;父目录有没有JRE;查询注册表: [HKEY_LOCAL_MACHINESOFTWAREJavaSoftJava Runtime Environment] 所以java.exe的运行结果与你的电脑里面哪个JRE被执行有很大的关系。

Java virtualMachine(Java虚拟机)。JVM是JRE的一部分,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算功能来实现的。JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM的主要工作是解释自己的指令集(即字节码)并映射到本地的CPU的指令集或OS的系统调用。JAVA语言是跨平台运行的,其实就是不同的操作系统,使用不同的JVM映射规则,让其与操作系统无关,完成了跨平台性;程序源代码不是直接编译——>链接成机器代码【传统的编译方法,生成的机器代码不可避免的根据特定的操作系统和特定的机器结构相关】,而是先转换为字节码这种特殊的中间形式,字节码再转换成机器码或系统调用【Java程序的字节码可以放到任意装有JRE的计算机运行,再由不同的JRE将他们转换成相应的机器代码,这就实现了Java程序的可移植性】。JVM对上层的Java源文件是不关心的,它关注的是由源文件生成的类文件(classfile),类文件的组成包括JVM指令集,符号表以及一些辅助信息。


所以某种程度上可以说JDK包含JRE,JRE包含JVM。

现在可以解释为什么要配置上面两条环境变量了。

第一条Path下配置的JDK的路径,使我们可以直接在命令行下调用JDK的编译工具以及实用工具。

第二条新建的ClassPath环境变量,设置JRE的路径,是为了保证运行java程序的时候优先使用那个JRE。

最后附图一张

6363996927505683475798298.gif

文章信息

创建时间
2023-12-11
作者
郭铭心
是否所有人可见
所有人可见
最后修改日期
2023-12-11
点击数
155
标签