本文是本人随便总结的==

首先大概清楚个关系:jdk 包含 jre 包含 jvm

然后来看下,当我们配置完java运行环境的时候,是不是在java默认安装文件下发现jdk和jre两个包,然后jdk包里面又有一个jre包

jdk包和jdk里面的jre包作用:

JRE 提供了 JAVA 程序运行的必要环境平台;

jdk 提供了 java 的编程环境,它包含编译调试的环境功能,包含 JRE ;

如果只安装了 jre ,那么 cmd 命令行中只能执行 java 指令,不能执行 javac ;

安装好 jdk 后才能执行 javac ,因为 jre 中不包含用于开发的编译环境;

之所以需要两套 jre ,是因为可以分担工作;当用户只需要执行 java 的程序时,那么 c:\program files\java\jre 下的 jre 就 ok !当用户是 java 程序员,需要 java 开发环境,那么开发时,系统就会优先去找“ java 、 javac ”这些命令本身的目录或者他们的父目录的 jre ;这样开发时一般运行的是 jdk 下的 jre ;而运行外部程序时,一般运行的是c:\program files\java\jre ,实现了分工,不同的 jre 负责各自范围的内容;

补充一点jdk 下的 lib 与 jre 下的 lib 有何区别?

jdk下的lib包括java开发使用的jar包,jre下的lib是运行java程序的jar包;

补充信息:

javac 可以将java源文件编译为class字节码文件
如 javac HelloWorld.java

运行javac命令后,如果成功编译没有错误的话,会出现一个HelloWorld.class的文件。

java 可以运行class字节码文件
如 java HelloWorld

注意java命令后面不要加.class

以上信息摘自百度:

https://blog.csdn.net/sjzs5590/article/details/7337404?utm_source=blogxgwz2

深入理解JDK、JRE(两套)、JVM、以及不同目录下的java.exe

https://www.cnblogs.com/xiaoneng/p/10219971.html

https://www.cnblogs.com/sylvia-liu/p/4203797.html

java的jdk和jre区别的更多相关文章

  1. Java中JDK、JRE和JVM三者之间有什么区别和联系?Java基础!

    任何语言或软件都需要一个运行环境.正如人想生活在空气中,鱼想生活在水中一样,喜荫植物不能暴露在阳光下,任何物体个体的存在都离不开其所需的环境,编程语言也是一样的. 接下来就详细描述一下Java中JDK ...

  2. Java的JDK和JRE

    Java的JDK和JRE 1.计算机交互方式 图形化界面(Graphical User Interface GUI) 命令行方式(Command Line Interface CLI) 2.Java语 ...

  3. 【java】JDK与JRE的区别

    JRE和JDK区别: JDK和JRE提供的服务包: JDK是整个JAVA的核心,JDK包含如下核心组件: ·javac – 编译器 ·jar – 打包工具 ·javadoc – 文档生成器 ·jdb ...

  4. Java环境变量配置以及作用、JDK与JRE区别以及命令行引入jar包

    在配置环境变量中: 设置JAVA_HOME: 一是为了方便引用,比如,JDK安装在C:\jdk1.6.0目录里,则设置JAVA_HOME为该目录路径, 那么以后要使用这个路径的时候, 只需输入%JAV ...

  5. java中jdk和jre的区别

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

  6. java基础---JDK、JRE、JVM的区别和联系

    当我们学习java语言时,首先需要安装到我们电脑上的就是jdk.jdk是java语言的开发环境,只有安装了jdk,我们才能使用java语言开发程序. JDK=JRE+开发工具包 JRE=JVM+核心类 ...

  7. Java中JDK和JRE的区别是什么?它们的作用分别是什么?

    JDK和JRE是Java开发和运行工具,其中JDK包含了JRE,但是JRE是可以独立安装的,它们在Java开发和运行的时候起到不同的作用~ 1.JDK JDK是Java Development Kit ...

  8. 【转】Java中JDK和JRE的区别是什么?它们的作用分别是什么?

    原文地址:http://blog.csdn.net/qq_33642117/article/details/52143824 JDK和JRE是Java开发和运行工具,其中JDK包含了JRE,但是JRE ...

  9. Java丨JDK与JRE

    小编是以为热爱Java的程序员,可是在我身边的一部分人他们不知道JDK和JRE是什么,有什么区别! 今天小编以个人的理解来说一说,不足之处还望大家指证. 首先我们来看看JDK和JRE他们两个的英文意思 ...

随机推荐

  1. Python3 基本语法 学习笔记

    如何定义python源文件的文件编码 如果想要定义文件代码的编码,一个特殊的注释应该放到源文件的第一或第二行,例如: # coding=<encoding name> 或 使用一种大多数编 ...

  2. c#获取所有枚举

    获取所有的枚举 1.将所有的枚举单独成一个项目 2.通Assembly加载程序集 3.通过Assembly对象的GetTypes获取所有的枚举类型 4.通过Enum.GetValues可以得到枚举的所 ...

  3. Codeforces Round #617 (Div. 3) 补题记录

    1296A - Array with Odd Sum 题意:可以改变数组中的一个数的值成另外一个数组中的数,问能不能使数组的和是个奇数 思路:签到,如果本来数组的和就是个奇数,那就OK 如果不是,就需 ...

  4. ros下怎么查看usb设备在哪个端口

    检查usb设备是否有权限以及在哪个端口,或者lsusb ls -l /dev |grep ttyUSB 查到设备端口,在启动文件下配置相应的端口号 <param name="seria ...

  5. Redis是什么? —— Redis实战经验

    REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo编写的开源的.基于键值对的缓存与存储系统,它具有以下特点: 1. 高性能 Redis具有 ...

  6. DFS-回溯与剪枝-C - N皇后问题

    C - N皇后问题 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上.你的任务是,对于给定的N,求出有多少种合法的放 ...

  7. python接口自动化-requests-toolbelt处理multipart/form-data

    1.requests-toolbelt官方文档:https://pypi.org/project/requests-toolbelt/ 2.环境安装 pip install requests-tool ...

  8. 一个简单的java web项目 仅实现添加

    连接数据库已经进行判断 要求: 1登录账号:要求由6到12位字母.数字.下划线组成,只有字母可以开头:(1分) 2登录密码:要求显示“• ”或“*”表示输入位数,密码要求八位以上字母.数字组成.(1分 ...

  9. early-stopping的使用

    early-stopping的使用 待办 https://blog.csdn.net/qq_37430422/article/details/103638681 github对应类导入,直接放在项目更 ...

  10. 微信小程序:如何判断数组中的条数?

    可以<view wx:if="{{list.length == 0}}"> </view> 可以在 {{}} 内进行简单的运算,包括三元运算符.逻辑判断.算 ...