JDK与JRE的关系和path的作用浅谈
JDK与JRE的关系和path的作用浅谈
- 摘要:JDK与JRE的关系以及path的配置对于初学者是要明白的问题,那么具体的JDK与JRE的关系是什么呢?那么本文讲给你简单介绍。
- 标签:JDK与JRE关系 path
- 对于JDK与JRE的关系以及path的配置问题首先我们来看下一些概念:
JDK(Java develop kit ,Java开发套件),JRE(Java runtime environment,Java运行时环境),JVM(Java virtual machine,Java虚拟机)
- JDK
- ++
- |-----JRE
- ++
- |-------JVM
- |-------
JDK与JRE的关系以及path的配置中,JRE只是JDK的一个部分,我们只要拥有了一份JDK就可以进行Java程序开发了,而顾名思义,JRE是Java运行的时候所依赖的平台,JVM则更只是JRE的一个部分,JRE除了虚拟机外还提供了众多链接库,这些库会被JVM在运行时调用。
我们会发现java_home/下有一个bin文件夹和一个JRE文件夹,而JRE文件夹下也有一个bin文件夹,它们一样吗?显然不一样。
java_home/bin中的工具是sun公司提供给我们一些工具,如java.exe,javac.exe,而jre/bin下的工具是运行时所需的,于是我们可以发现java_home/bin下有一个javac.exe,而jre/bin下肯定没有javac.exe,这是很容易解释的。
奇怪的是,Sun公司给我们提供了两套JRE,稍留意一下我们就会发现在装完JDK,还可以选择装一个JRE,这个JRE是被默认装到C:/Program Files/Java下的。sun提供两套JRE是有道理的,如果我们只是想运行Java程序,那么去官网下一个JRE就行了,而无需拿来一个JDK,如果是要开发Java程序那就需要一个JDK了."JDK里面的工具几乎都是用Java写的,所以JDK本身就是Java应用程序,因此要使用JDK附的工具来开发Java程序也必须要自行附一套JRE才行,这就是java_home/jre存在的原因,而位于Program File/jre的那套JRE就是拿来执行我们自己写的Java应用程序的。不过,两套中任何一套JRE都可以拿来执行我们所写的Java应用程序,可是JDK内附的开发工具在预设开发工具使用包装器(.exe)来启动的情况下,都拿自己支选用java_home/jre".(《Java深度历险》)
因此,现在可以明白设path和classpath的作用了:path是为JDK提供的那些工具设的,如java.exe,javac.exe,而classpath是为Java程序所用到的库文件所设的,于是path设成:java_home/bin;而classpath设为:java_home/jre/lib/rt.jar,如果我们开发的一个应用中用到了非j2se提供的库文件,则需将这些文件加到classpath中,比如说利用javamail开发一个邮件应用,就应该把mail.jar
等文件加到classpath中:java_home/jre/lib/ext/mail.jar;.
如果一台PC上装了几个JRE,那么就要注意了,有时很容易产生问题,很可能我们用来编译Java程序的javac.exe所相关的JRE与运行程序时所用的JRE不是一个版本, 这可能会产生版本冲突,这可以通过设定path变量来解决。
最后应用中的第三方文件应该加到java_home/jre/lib/ext下,就像刚才那样,与Java相关的安全设定档都放置java_home/jre/lib/security。最后扩展一点,与Java相关的很多工具的path设定原则都与上述差不多,比如说想安装一个Ant,应该在path 中这样设:
- F://Ant/apache-ant-1.6.5/bin;
看看bin下有什么就明白这样做是为了指定命令工具ant所在的目录。
JDK与JRE的关系以及path的配置那么就先介绍到这里,那么这些相关的学习在其他文章中还会渗透。
【编辑推荐】
- JDK的概念、组成及JDK常用包
- JDK1.4在Windows下的环境配置
- JDK1.6在LINUX下的安装配置
- JDK1.5中新的语言特征浅析
- 在JDK7 b50中将实现正则表达式命名捕获组
JDK与JRE的关系和path的作用浅谈相关推荐
- 两分钟搞懂 JDK 与 JRE 的关系!
作者:MobMsg,资深全端工程师一枚,架构师社区合伙人! JDK 与 JRE 的关系用一张图就可以诠释的非常清楚,把这张图深深记进脑子里,目标就达成50%了 若您有遇到其它相关问题,非常欢迎在评论中 ...
- Jdk 和 jre 的 关系和区别
Jdk 和 jre 的 关系和区别 区别: JDK:是Java Development Kit 的简称–>翻译过来就是:Java 开发工具包.是程序员使用java语言编写java程序所需的开发工 ...
- JAVA基础-jdk和jre的关系和区别
JAVA基础-jdk和jre的关系和区别 1.名词介绍 JDK(Java Development Kit)是Java开发工具包,里面包含Java的开发环境(提供了编译器javac等工具,用于将java ...
- Java 技术体系(JDK 与 JRE 的关系)、POJO 与 JavaBeans
Java 技术体系的分层结构(不同的颜色表示不同的层次),尤其注意 JDK 与 JRE 之间的包含关系: 图见 Java Platform Standard Edition 7 Documentati ...
- jdk和jre(jdk和jre的关系)
jdk jre 分别指的是什么东西啊? java软件包中主要有两部分:jdk,jre. 前者就是开发java程序是所用的JDK, jre是java runtime envirment的简称,包括jav ...
- 默然学java(一)JAVA背景 JDK和JRE的关系
java JDK是啥? JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK). SE(JavaSE),standard edition,标准版,是我们通常用 ...
- JVM,Jdk和Jre的关系
JRE中包含了JVM和Java的标准类库,比如我们常用的Java lang包下面的类就是放在标准类库中 JDK包含了JRE和一些开发工具集,比如我们常用的java,javac等命令 我们安装JDk的时 ...
- JDK,JRE,JVM及设置PATH
JDK 就是java的开发工具集,顾名思义就是做开发的 其中包括 javac,也就是 java compiler 等. JRE 就是java程序的运行环境 所写的java程序在经过jdk编译后会形成 ...
- Eclipse中JDK与JRE区别
目录(?)[-] JDK与jRE的区别 eclipse中的JDK与JRE JDK与jRE的区别 JDK(Java development kit):Java 开发工具,包括一系列java命令,如jav ...
最新文章
- bzoj2560串珠子 状压dp+容斥(?)
- 拉取ftp服务器上的文件_winscp和云服务器,2步实现winscp将文件上传到腾讯云Linux云服务器...
- html插入图片和文字,HTML第三课文字图片插入
- vector 不初始化时什么状态_练车时,教练为什么不给你开空调?
- Linux 环境下安装 GitLab 与配置
- vim - 自动补齐
- 计算机二级电子表格开根号函数,教你如何用函数方式在excel中开根号
- Schema hasn't been registered for model 解决方案
- 经典书籍《宽客人生》阅读心得
- 一个软件系统的兼容性测试,在兼容性测试中,如何判断软件的兼容性?
- asp.net mvc 网站生成二维码
- 文件隐藏服务器版本信息,隐藏Tengine的版本信息
- 图像数据标准化与归一化
- eclipse 启动 tomcat htt://localhost:8080 不能访问
- 计算机监控系统应用前景和发展趋势,计算机控制技术的现状及发展趋势
- python爬取地图地址_网络爬虫-python爬取高德地图地点
- 数据挖掘-客户倾向分析
- IT安全交给MSP,企业能当“甩手掌柜”吗?
- 汇川AM402和串口调试助手自由协议通信
- BillGates Botnet
热门文章
- 南京邮电考研计算机科学大纲,2019年南京邮电大学811数据结构考研大纲
- Docker网络——实现容器间通信、容器与外网通信以及容器的跨主机访问
- Mysql进阶(1)——异步复制(主从复制、Gtid复制)、半同步复制
- python hist函数_Python主要数据探索函数
- nbu oracle 冷备_NBU备份系统应用操作手册..doc
- 兴趣点推荐代码_推荐系统模型阿里用户兴趣模型(附完整代码)
- python 车牌识别简单_智能车牌识别 停车如此简单
- 夏日php登录系统源码,夏日PHP企业管理系统 v0.1
- 架构之美(china-pub全国独家首发)
- Android tabLayout+recyclerView实现锚点定位