Java运行时环境(JRE)是由Sun Microsystems开发的软件。
JRE允许计算机系统运行Java应用程序。
【资料图】
JRE中有一个Java虚拟机(JVM)和一些标准类库。
一、相关介绍
Java runtime environment is short for Java runtime environment, and Java runtime environment (including Java plug-ins) is the product of Sun.
It includes two parts: Java runtime environment and Java plug-in.
JavaRuntimeEnvironment(JRE)是一个Java平台,应用程序可以在这个平台上运行、测试和传输。包括Java虚拟机(jvm)、Java核心类库和支持文件。
它不包含开发工具(JDK)-编译器,调试器和其他工具。JRE需要辅助软件——Java插件——来在浏览器中运行applet。
Java plug-in software allows Java applets and JavaBean components to run in browsers that use the Sun Java runtime environment.
而不是在使用默认Java运行时环境的浏览器中运行。Java插件可用于Netscape Navigator和Microsoft Internet Explorer。
J2RE是Java2运行时环境,也就是Java运行时环境,只强调匹配Java2平台,有时简称JRE。如果你只需要运行Java程序或Applet,
下载安装就行了。如果你想自己开发Java软件,请下载JDK(JRE和JDK的区别)。JRE包含在JDK。
二、版本管理
Java的解决方案是每个程序都有自己的一套JRE。
例如,许多套JRE和JDK已经安装在某人的机器上(JDK包括相同版本的JRE,以及编译器和其他工具)。它们是:
BEAWeblogic Server 7.0自带了一套JDK1.3.1_02,还下载了最新的JDK1.4.1_02。
JBuilder9自带一套JDK1.4.1_02。
Oracle8.1.7附带了一组JRE1.1.7
Reason comes with a set of JDK1.3
Dream weavers bring their own JDK1.3.
6套JRE,每套JRE安装在不同的目录下,不会互相影响。当在控制台上执行java.exe时,操作系统如下查找JRE:
首先找出当前目录中是否有JRE。
找出父目录中是否有JRE。
然后在路径中寻找JRE。
注册表HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\ 查看CurrentVersion 的键值指向哪个JRE
最常用的是在PATH 路径中找JRE,一般情况下,自己的程序运行之前都会先在批处理文件里面临时设置PATH,把自己用的JRE 放到PATH 路径最前面,所以肯定会运行自己带的JRE,
不会造成版本混乱。
三、基础类库
JRE 自带的基础类库主要是JRE\lib\rt.jar 这个文件,包括了Java2 平台标准版的所有类库。和JRE 的版本一致。
Net Framekwork 的核心类库
Net Framekwork 的核心类库被放置在C:\Winnt\assembly\gac\目录下,按照不同的名称空间放在不同目录中,不像JRE 打成了一个包。并且可以同时存在不同的版本,例如:
某类库1.0 版本C:\Winnt\assembly\gac\名称\1.0\名称.dll
某类库1.1 版本C:\Winnt\assembly\gac\名称\1.1\名称.dll
这样做,虽然很灵活,可以随时把类库更新到最新的状态,但是很容易带来版本管理的复杂度,造成版本不一致。
四、查找方法
JRE 中由ClassLoader 负责查找和加载程序引用到的类库,基础类库ClassLoader 会到rt.jar 中自动加载,其它的类库,
ClassLoader 在环境变量CLASSPATH 指定的路径中搜索,按照先来先到的原则,放在CLASSPATH 前面的类库先被搜到,
Java 程序启动之前建议先把PATH 和CLASSPATH 环境变量设好,OS 通过PATH 来找JRE,确定基础类库rt.jar 的位置,
JRE 的ClassLoader 通过CLASSPATH 找其它类库。但有时候会出现这样的情况,希望替换基础类库中的类库,
那么也可以简单的通过-Djava.endrosed.path=…参数传递给java.exe,
于是ClassLoader 会先于基础类库使用java.endrosed.path 参数指定路径的类库。因此Java 的版本管理是非常简单有效的,也许很原始,不过很好用,简单就不容易出错。
(所以我很奇怪Eric Ramond 为什么批评Java 的类库管理机制,他还居然批评Java 的接口,令人怀疑他对Java 的了解程度)
五、管理机制
Net Framework 的类库管理机制.Net Framework 的类库管理机制相当强大和复杂,分为私有类库和共享类库。
私有类库就放在exe 程序当前路径下,或其相对路径中,只有当前程序可见。
本文java的jdk和jre是什么,JRE是什么到此分享完毕,希望对大家有所帮助。
关键词:
Copyright 2000-2021 by www.jiaoyu.dzxwnews.com all rights reserved
邮箱 : 905 14 41 07@qq.com