一、关于JDK和JRE

JDK (Java Development Kit)即java开发工具,包括JER及代码编译器(javac)、文档注释器(JavaDoc)、代码调试器(Java Debugger)等等工具.

JRE(Java Runtime Environment)即java应用运行环境,包括JVM、类库等.

JVM (Java Virtual Machine)即java虚拟机,负责将字节码(Java byte codes)翻译成对应操作系统平台的机器码(machine code)指令;java语言的操作系统无关性特性就是基于JVM实现的.

二、关于环境变量的配置

1、JAVA_HOME:指定JDK的安装路径,如:D:\Program Files\Java\jdk1.7.0_80

2、CLASSPATH=.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar,指定编译后的.class文件存放的路径,使用cmd命令窗口时,较为有用,一般可不配置

3、PATH:配置系统默认JDK和JRE路径,在PATH环境变量值后面追加%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

三、JDK和JRE的安装

因为JDK包含了JRE,所以安装完JDK后JRE实际上也就安装了(JDK的安装目录中存在JRE目录),但是,我们在安装完JDK后,会又弹出一个安装JRE的窗口,如下

那么我们要不要安装呢?安装与不安装有什么区别呢?答案是可以不安装,这个JRE安装实际上是客户端使用的独立安装版本,它会自动配置JRE的环境变量(查看PATH环境变量,会发现在最开始多了C:\ProgramData\Oracle\Java\javapath;路径配置,打开这个目录,会看到java.exe、javaw.exe、javaws.exe命令文件,同时还会向C:\Windows\System32目录下也拷贝一份,同时还会向注册表写入JRE默认版本信息);不安装的话,我们就需要手动配置JDK和JRE的环境变量。

四、JDK和JRE版本切换

1、如果没有安装独立版本的JRE,则只修改环境变量JAVA_HOME的值为对应的版本路径即可;使用javac -version查看JDK的版本,使用java -version查看JRE的版本。

2、如果安装了独立版本的JRE,JDK版本依然通过JAVA_HOME环境变量进行修改,JRE的版本修改则需要将对应版本的java.exe、javaw.exe、javaws.exe命令文件拷贝到C:\ProgramData\Oracle\Java\javapath和C:\Windows\System32目录下(System32目录下java命令文件也可以不需要,因为javapath下已经存在,根据环境变量中的配置顺序优先使用javapath下的),同时将注册表中的JRE版本信息修改为对应的版本(regedit打开注册表,找到HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment,修改CurrentVersion的值为对应的JRE版本)。

说明:本文总结为个人理解,如有错误,请指正。

关于JDK和JRE的一些总结的更多相关文章

  1. java环境变量以及jdk、jre、jvm

    一.jdk,jre,jvm的了解:jdk全称java development kit即java开发工具包,是整个java的核心,包含了java运行环境jre.java工具包和java的基础类库: jr ...

  2. J2EE,J2SE,J2ME,JDK,SDK,JRE,JVM区别

    转自:http://www.metsky.com/archives/547.html 一.J2EE.J2SE.J2ME区别 J2EE——全称Java 2 Enterprise Edition,是Jav ...

  3. java中jdk和jre的区别

    JRE: Java Runtime Environment JDK:Java Development Kit JRE顾名思义是java运行时环境,包含了java虚拟机,java基础类库.是使用java ...

  4. Java学习2 - JDK和JRE和JVM的区别_JDK的下载安装_环境变量配置

    一 JDK和JRE和JVM的区别 Jdk: Java Development kit - Java 开发工具 JRE: Java Runtime Environment - java运行环境 JVM: ...

  5. Java2_java入门时的一些基本概念的理解(j2ee,j2se,j2me,jdk,sdk,jre,jvm,跨平台)

    什么是SDK呢? Software Develop Kit的简称,顾名思义就是软件开发包.软件开发商实现底层模块,并对其进行类库封装,配置成高级别的开发环境,为程序员上层的程序开发提供支持.譬如Goo ...

  6. XAMPP里tomcat启动报错:Make sure you have Java JDK or JRE installed and the required ports are free

    以前用XAMPP的时候就是自然而然装好了就可以用,最近重装了新系统,打算在Windows 10里面配置Apache tomcat.PHP.MySQL的开发环境,迟迟试验不成功,于是直接用了XAMPP, ...

  7. jdk 与jre的区别

    jdk就是java的开发工具集,顾名思义就是你做开发用的,其中包括javac,也就是java compiler等. jre(java runtime environment),就是java程序的运行环 ...

  8. jdk、jre、jvm的关系

    JDK里面的工具也是用JAVA编写的,它们本身运行的时候也需要一套JRE,如C:\Program Files\Java\jdk1.5.x\目录下的JRE.而C:\Program Files\Java\ ...

  9. jdk与jre的区别

    很多程序员已经干了一段时间java了依然不明白jdk与jre的区别.JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境. ...

  10. Jdk和Jre目录和三个lib目录说明----外部扩展jar包servlet,mysql,oracle等

    以下文章转载自a personal blog:For Future,因为昨天下午在cmd模式下编译servlet失败,后来在网上找到这篇文章帮我解决了该问题,我觉得挺值得收藏的,并且这篇文章对&quo ...

随机推荐

  1. Method and apparatus for encoding data to be self-describing by storing tag records describing said data terminated by a self-referential record

    A computer-implemented method and apparatus in a computer system of processing data generated by a f ...

  2. delphi 10.2 创建并使用资源文件(一共22种格式,RCDATA是自定义格式)

    windows支持以下资源格式: 1 2 //下面是 Windows 支持的资源格式: RT_CURSOR = MakeIntResource(1); RT_BITMAP = MakeIntResou ...

  3. 解决无法定位程序输入点SymEnumSymbols于动态链接库dbghelp.dll

    作者:朱金灿 来源:http://blog.csdn.net/clever101 下载一个源码,使用VS2008编译链接无问题,运行时出现一个错误:无法定位程序输入点SymEnumSymbols于动态 ...

  4. events(事件): 基础1

    1    所有能触发事件的对象都是 EventEmitter 类的实例. 这些对象开放了一个 eventEmitter.on() 函数,允许将一个或多个函数绑定到会被对象触发的命名事件上. 事件名称通 ...

  5. Xbin-Store(分布式商城)项目所用Linux服务系列 FastDFS安装(五)

    系列 Xbin-Store(分布式商城)项目所用Linux服务系列 MySQL安装(一) Xbin-Store(分布式商城)项目所用Linux服务系列 Redis集群安装(二) Xbin-Store( ...

  6. C++第11周(春)项目4 - 类族的设计

    课程首页在:http://blog.csdn.net/sxhelijian/article/details/11890759,内有完整教学方案及资源链接 [项目4 - 类族的设计]按下面的提示,由基类 ...

  7. zedboard之GPIO驱动器(离FPGA直到LINUX申请书)

    笔者:xiabodan   资源: http://blog.csdn.net/xiabodan/article/details/24308373 1 EDK 大家知道我们在EDK中建立GPIO然后倒出 ...

  8. 使用 matlab 数据集的生成(generate datasets)

    一般手工生成的数据集(artificial datasets),通常用于实验部分最开始的演示和示意,用于对结果的一种精确计算和量化分析. 1. Swiss/Helix/Twinpeaks/Broken ...

  9. HDU - 4734 F(x) (2013成都网络游戏,数字DP)

    意甲冠军:求0-B见面<=F[A]所有可能的 思维:数字DP,内存搜索 #include <iostream> #include <cstring> #include & ...

  10. NPOI 替换word模版

    private void Button_Click(object sender, RoutedEventArgs e) { string fileName = @"C:\Users\Admi ...