什么是  Java 运行时环境 (JRE)?

繁忙的开放式办公室中工作的人

什么是 JRE?

Java 运行时环境 (JRE) 是一个运行在计算机操作系统软件之上的软件层,它提供了特定 Java 程序运行所需的类 库和其他资源。

JRE 是 Java 程序开发与运行的三个核心组件之一,三者紧密关联。另外两个组成部分如下:

  •  Java 开发工具包(简称 JDK),是一套用于开发 Java 应用程序的工具。开发人员根据 Java 版本以及软件包或版本来选择 JDK——Java 企业版 (Java EE)、Java 标准版 (Java ME) 或 Java 微型版 (Java ME)。每个 JDK 始终包含一个兼容的 JRE,因为运行 Java 程序是开发 Java 程序过程的一部分。

  • Java 虚拟机(简称 JVM)运行运行中的 Java 应用程序。每个 JRE 都包含一个默认的 JVM,但开发者可以选择另一个能满足其应用程序特定资源需求的 JVM。

JRE 将使用 JDK 创建的 Java 代码与在 JVM 上运行所需的必要库结合起来,然后创建一个运行最终程序的 JVM 实例。JVM 可用于多个操作系统,使用 JRE 创建的程序可在所有这些系统上运行。通过这种方式,Java 运行时环境使得 Java 程序能够在任何操作系统中运行而无需修改。

您可以从 Oracle 下载 JDK,包括一个兼容的 JRE。

辅以专家洞察分析的最新科技新闻

通过 Think 时事通讯,了解有关 AI、自动化、数据等方面最重要且最有趣的行业趋势。请参阅 IBM 隐私声明

谢谢!您已订阅。

您的订阅将以英语提供。每份时事通讯都包含取消订阅链接。您可以在此管理您的订阅或取消订阅。更多相关信息,请参阅我们的 IBM 隐私声明

JRE 是如何工作的?

JDK 和 JRE 相互交互以创建一个可持续的运行时环境,使得基于 Java 的应用程序在几乎所有操作系统中无缝执行。这些属性构成了 JRE 运行时架构:

ClassLoader

Java ClassLoader 动态加载运行 Java 程序所需的所有类。由于 Java 类仅在需要时加载到内存中,JRE 使用 ClassLoader 按需自动化此过程。

字节码验证器

字节码验证器确保 Java 代码的格式和准确性,然后将其传递给解释器。如果代码违反系统完整性或访问权限,该类将被视为损坏且不会被加载。

解释器

在字节码成功加载后,Java 解释器创建一个 JVM 实例,允许 Java 程序在底层机器上本机运行。

应用程序开发

开启旅程:云端企业应用程序开发

在本视频中,Peter Haumer 博士通过演示不同的组件和实践(包括 IBM Z Open Editor、IBM Wazi 和 Zowe),探讨了混合云环境中现代企业应用程序的开发现状。

JRE 由什么组成?

除了 Java 虚拟机外,JRE 还由各种其他支持软件工具和功能组成,以充分发挥 Java 应用程序的性能。

部署解决方案

作为 JRE 安装的一部分,包括部署技术,如 Java Web Start 和 Java 插件,它们简化了应用程序的激活并为未来的 Java 更新提供高级支持。

开发工具包

JRE 还包含旨在帮助开发人员改进其用户界面的工具包。其中一些工具包包括:

  • Java 2D: 一种用于在 Java 语言中绘制二维图形的应用程序编程接口 (API)。开发人员可创建丰富的用户界面、特效、游戏和动画。

  • Abstract Window Toolkit (AWT): 一种用于创建对象、按钮、滚动条和窗口的图形用户界面 (GUI)。

  • Swing: 另一个轻量级 GUI,使用丰富的小部件组件来提供灵活的定制选项。

集成库

Java 运行时环境提供了多个集成库,以帮助开发者在应用程序与服务之间建立无缝数据连接。其中包括:

  • Java IDL (CORBA):使用公共对象请求代理体系结构来支持以 Java 编程语言编写的分布式对象。

  • Java 数据库连接 (JDBC) API: 提供工具让开发者编写能够访问远程关系数据库、平面文件和电子表格的应用程序。

  • Java 命名和目录接口 (JNDI): 一种编程接口和目录服务,可帮助客户端创建便携式应用程序,通过命名约定从数据库获取信息。

语言与实用工具库

JRE 包含 java.lang. 和 java.util.基础包,这些包是 Java 应用程序设计、包版本管理及监控的基础。其中部分包包括:

  • 集合框架: 一种统一体系结构,由一系列旨在改进应用程序数据存储和处理过程的接口组成。

  • 并发工具: 一个强大的框架包,提供高性能线程工具。

  • 偏好设置 API: 一种轻量级、跨平台的持久化 API,允许同一台计算机上的多个用户定义自己的应用程序偏好设置组。

  • 日志记录: 一个生成日志报告的包——例如安全故障、配置错误和性能问题——以供进一步分析。

  • Java 归档文件 (JAR): 一种与平台无关的文件格式,可将多个文件以JAR格式捆绑,显著提高下载速度并减小文件大小。
相关解决方案
IBM Enterprise Application Service for Java

完全托管的单租户服务,用于开发和交付 Java 应用程序。

深入了解 Java 应用程序
DevOps 解决方案

使用开发运维软件和工具,在多种设备和环境中构建、部署和管理云原生应用程序。

深入了解开发运维解决方案
企业应用程序开发服务

云应用程序开发意味着一次构建、快速迭代和随处部署。

应用程序开发服务
采取后续步骤

借助 IBM 云应用程序开发咨询服务,您可以获得提供专家指导和创新解决方案,使您的云策略更为精简高效。与 IBM 的云专家合作,实现应用程序的现代化改造、扩展和加速,为企业带来变革性的成果。

深入了解应用程序开发服务 开始免费使用 IBM Cloud 进行构建