¿Qué es Java Runtime Environment (JRE)?
Descubra qué hace Java Runtime Environment (JRE) y cómo funciona con otros componentes de la plataforma Java para ejecutar aplicaciones Java.
Suscríbase al boletín de noticias de IBM
fondo negro y azul
¿Qué es JRE?

Java Runtime Environment, o JRE, es una capa de software que se ejecuta sobre el software del sistema operativo de una computadora y proporciona las clases de bibliotecas y otros recursos que un programa Java específico necesita para ejecutarse.

El JRE es uno de los tres componentes interrelacionados para desarrollar y ejecutar programas Java. Los otros dos componentes son los siguientes:

  1.  Java Development Kit, o JDK
  2. Java Virtual Machine, oJVM

Java Development Kit, o JDK

Es un conjunto de herramientas para desarrollar aplicaciones Java. Los desarrolladores eligen los JDK por versión de Java y por paquete o edición: Java Enterprise Edition (Java EE), Java Special Edition (Java SE) o Java Mobile Edition (Java ME). Cada JDK siempre incluye un JRE compatible, porque ejecutar un programa Java es parte del proceso de desarrollo de un programa Java.

Java Virtual Machine, o JVM

Ejecuta aplicaciones Java en vivo. Cada JRE incluye un JRE predeterminado, pero los desarrolladores tienen la libertad de elegir otro que satisfaga las necesidades específicas de recursos de sus aplicaciones.

 

El JRE combina el código Java creado utilizando el JDK con las bibliotecas necesarias para ejecutarlo en una JVM y luego crea una instancia de la JVM que ejecuta el programa resultante. Las JVM están disponibles para varios sistemas operativos y los programas creados con JRE se ejecutarán en todos ellos.

De esta manera, Java Runtime Environment es lo que permite que un programa Java se ejecute en cualquier sistema operativo sin modificaciones.

Puede descargar el JDK, incluyendo un JRE compatible, en Oracle (enlace externo a ibm.com).

¿Cómo funciona JRE?

JDK y JRE interactúan para crear un entorno de ejecución duradero que permite la ejecución perfecta de aplicaciones basadas en Java en prácticamente cualquier sistema operativo. Los siguientes elementos conforman la arquitectura de tiempo de ejecución de JRE:

ClassLoader

Java ClassLoader carga dinámicamente todas las clases necesarias para ejecutar un programa Java. Dado que las clases de Java solo se cargan en la memoria cuando son necesarias, JRE usa ClassLoaders para automatizar este proceso bajo demanda.

Verificador de código de bytes

El verificador de código de bytes garantiza el formato y la precisión del código Java antes de que pase al intérprete. En el caso de que el código viole la integridad del sistema o los derechos de acceso, la clase se considerará corrupta y no se cargará.

Intérprete

Una vez que el código de bytes se carga correctamente, el intérprete de Java crea una instancia de la JVM que permite que el programa Java se ejecute de forma nativa en la máquina subyacente.

¿En qué consiste JRE?

Además de Java Virtual Machine, JRE se compone de una variedad de otras herramientas y funciones de software de apoyo para aprovechar al máximo sus aplicaciones Java.

Soluciones de implementación

Como parte de la instalación de JRE se incluyen tecnologías de implementación como Java Web Start y Java Plugin que simplifican la activación de aplicaciones y brindan soporte avanzado para futuras actualizaciones de Java.

Conjuntos de herramientas de desarrollo

El JRE también contiene kits de herramientas diseñados para ayudar a los desarrolladores a mejorar su interfaz de usuario. Algunos de estos kits de herramientas incluyen:

Java 2D

Una interfaz de programación de aplicaciones (API) que se utiliza para dibujar gráficos bidimensionales en lenguaje Java. Los desarrolladores pueden crear ricas interfaces de usuario, efectos especiales, juegos y animaciones.

Abstract Window Toolkit (AWT)

Una GUI (interfaz gráfica de usuario) que se utiliza para crear objetos, botones, barras de desplazamiento y ventanas.

Swing

Otra GUI liviana que utiliza un amplio conjunto de widgets para ofrecer personalizaciones flexibles y fáciles de usar.

Bibliotecas de integración

Java Runtime Environment proporciona una serie de bibliotecas de integración para ayudar a los desarrolladores a crear conexiones de datos integradas entre sus aplicaciones y servicios. Algunas de estas bibliotecas incluyen:

Java IDL (CORBA)

Utiliza la arquitectura de solicitud de objeto común para admitir objetos distribuidos escritos en lenguaje de programación Java.

Java Database Connectivity (JDBC) API

Proporciona herramientas para que los desarrolladores escriban aplicaciones con acceso a bases de datos de relaciones remotas, archivos planos y hojas de cálculo.

Java Naming and Directory Interface (JNDI)

Una interfaz de programación y un servicio de directorio que permite a los clientes crear aplicaciones portátiles que pueden obtener información de bases de datos mediante convenciones de nomenclatura.

Bibliotecas de idiomas y utilidades

Con el JRE se incluyen java.lang. y java.util. paquetes que son fundamentales para el diseño de aplicaciones Java, control de versiones, administración y monitoreo de paquetes. Algunos de estos paquetes incluyen:

Collections Framework

Una arquitectura unificada compuesta por una colección de interfaces diseñadas para mejorar el almacenamiento y el proceso de los datos de la aplicación.

Concurrency Utilities

Un paquete de marco potente con utilidades de subprocesamiento de alto rendimiento.

Preferences API

Una API persistente liviana y multiplataforma que permite a varios usuarios en la misma máquina definir su propio grupo de preferencias de aplicaciones.

Logging

Produce informes de registro, como fallas de seguridad, errores de configuración y problemas de rendimiento, para un análisis más detallado.

Java Archive (JAR)

Un formato de archivo independiente de la plataforma que permite agrupar varios archivos en formato JAR, lo que mejora significativamente la velocidad de descarga y reduce el tamaño del archivo.

Soluciones relacionadas
Desarrolle y modernice aplicaciones

Proporcione las habilidades y herramientas que su equipo necesita para impulsar la innovación y hacer avanzar su negocio.

Explore la creación y modernización de aplicaciones
OpenJDK e IBM Runtimes for Business

IBM Runtimes for Business proporciona soporte para entornos de tiempo de ejecución Java de código abierto, además de supervisión y gestión para aplicaciones Java.

Explore OpenJDK e IBM Runtimes for Business
IBM® WebSphere Hybrid Edition

Descubra cómo impulsar el desarrollo nativo de la nube, la modernización de aplicaciones y el soporte para aplicaciones existentes con WebSphere® Hybrid Edition.

Explore IBM® WebSphere Hybrid Edition
Recursos ¿Que es Java?

Descubra por qué Java sigue siendo una plataforma de desarrollo tan popular y cómo acelera los proyectos y admite una amplia variedad de tecnologías emergentes.

¿Qué es Java Spring Boot?

Descubra cómo Java Spring Boot simplifica el desarrollo de aplicaciones web y microservicios con Java Spring Framework.

Dé el siguiente paso

Para muchas organizaciones, Java sigue siendo una parte vital del desarrollo de aplicaciones y proporciona una base sólida al crear soluciones portátiles y escalables. Explore OpenJDK e IBM Runtimes for Business, que proporcionan soporte comercial confiable y rentable para implementar, supervisar y gestionar aplicaciones Java.

Descubra más acerca de OpenJDK e IBM Runtimes for Business