¿Qué es el entorno de ejecución de Java?

El entorno en tiempo de ejecución de Java (JRE) es un software que los programas de Java necesitan para ejecutarse correctamente. Java es un lenguaje de computación que respalda muchas de las aplicaciones web y móviles actuales. El JRE es una tecnología subyacente que comunica el programa de Java con el sistema operativo. Actúa como traductor y facilitador, y brinda todos los recursos de modo que, una vez que escribe un software de Java, se ejecuta en cualquier sistema operativo sin necesidad de más modificaciones.

¿Por qué es importante el JRE?

Un programa de software necesita un entorno de tiempo de ejecución que brinde acceso a la memoria y a otros recursos del sistema como archivos de programas y dependencias. Antes, la mayor parte del software utilizaba el sistema operativo directamente como su entorno de tiempo de ejecución. Sin embargo, esto significaba que los desarrolladores tenían que escribir código diferente para cada sistema operativo en el que querían que se ejecutasen sus aplicaciones. La tecnología del entorno de tiempo de ejecución (JRE) de Java se creó como solución a este problema.
 
El JRE es uno de los tres componentes de la plataforma Java necesarios para ejecutar correctamente cualquier programa de Java. El kit de desarrollo Java Development Kit (JDK) y la máquina virtual de Java (JVM) son los otros dos componentes.

Java Development Kit

El JDK es una colección de herramientas de software que se puede utilizar para desarrollar aplicaciones de Java. Puede configurar el JDK en el entorno de desarrollo si lo descarga e instala. Seleccione la versión de software del JDK que coincida con la versión de Java que desee utilizar. Por ejemplo, Java Standard Edition, o Java SE, requiere Java SE JDK.

Máquina virtual de Java

La JVM es un software que ejecuta el programa de Java línea a línea. Los desarrolladores configuran los ajustes de la JVM para administrar recursos de programas cuando se ejecuta la aplicación de Java. Por ejemplo, puede configurar la configuración de memoria de la JVM y comprobar cuánta memoria interna consumen sus aplicaciones de Java durante el tiempo de ejecución.

Rol del JRE en el lenguaje de programación Java

El JRE combina el código de Java que crea con el JDK con código integrado adicional conocido como bibliotecas. A continuación, crea una instancia de JVM, o copia local, que finalmente ejecuta los programas de Java. Las JVM están disponibles para varios sistemas operativos, y el JRE genera una única copia de su código de Java que se ejecuta en todos los tipos de JVM. De esta manera, el JRE facilita la independencia de plataformas para aplicaciones de Java. Una vez que las cree, podrá ejecutarlas en cualquier parte.

Diferencias entre el JRE, la JVM y el JDK

El JDK es una capa de software situada por encima del JRE que contiene un compilador, un depurador y otras herramientas que se encuentran de manera común en cualquier entorno de desarrollo de software. El código que se escribe en el JDK tiene una sintaxis similar a la lengua inglesa. El JDK lo compila y transfiere el código de bytes al JRE. Por el contrario, el JRE contiene bibliotecas de clases, que respaldan los archivos, y la JVM. El JRE utiliza estos componentes de software para ejecutar el código de bytes en cualquier dispositivo.

¿Cómo funciona el JRE?

El entorno de ejecución de Java (JRE) se ejecuta sobre el sistema operativo, y brinda recursos específicos de Java adicionales. El Java Development Kit (JDK) y el JRE interactúan para crear un entorno de tiempo de ejecución sostenible que ejecute archivos de programas de Java en cualquier máquina. El JRE utiliza tres componentes fundamentales para funcionar.

ClassLoader

Las bibliotecas de clase de Java contienen colecciones de código previamente escrito al que puede llamar cuando sea necesario. Dichas colecciones simplifican el trabajo de los desarrolladores de Java al brindar métodos integrados para tareas comunes y no triviales como recibir entradas de los usuarios, mostrar resultados a los usuarios y más. Todos los programas de Java hacen referencia a diferentes bibliotecas de clases. El ClassLoader de Java carga de manera dinámica todos los archivos de clase necesarios en la máquina virtual de Java (JVM) bajo demanda.

Verificador de bytecode

El JDK tiene un compilador que convierte el código similar a la lengua inglesa que ha escrito en una versión de lenguaje de máquina llamado Java bytecode. El verificador de bytecode en el JRE verifica el formato y la precisión del código de Java antes de cargarlo en la JVM. Por ejemplo, si el código infringe la integridad del sistema o los derechos de acceso, el JRE no cargará el archivo de clase.

Intérprete

Una vez que el bytecode se carga correctamente, el intérprete de Java crea la instancia de la JVM que ejecuta el programa de Java en la máquina subyacente.

¿Cuáles son los componentes del JRE?

Además de los componentes principales, el entorno de ejecución de Java (JRE) contiene muchos otros componentes de software que ayudan a ejecutar programas de Java de manera más eficiente. A continuación se muestran algunos ejemplos:

Herramientas de desarrollo

El JRE contiene herramientas de desarrollo como kits de herramientas de interfaz de usuario que puede utilizar para mejorar la calidad de sus aplicaciones. A continuación se muestran algunos ejemplos:

Java 2D

Java 2D es una interfaz de programación de aplicaciones (API) que puede utilizar para diseñar gráficos en dos dimensiones y crear completas interfaces de usuario, videojuegos, animaciones y efectos especiales en lenguaje Java.

Swing

Swing es una interfaz de usuario gráfica (GUI) ligera que brinda personalizaciones flexibles y sencillas.

Abstract Window Toolkit

Abstract Window Toolkit (AWT) es una interfaz de usuario gráfica que puede utilizar para crear objetos de interfaz de usuario como botones, ventanas y barras de desplazamiento.

Soluciones de implementación

El JRE incluye tecnologías que simplifican el proceso de publicar cambios en el software para usuarios de aplicaciones. Estas tecnologías también brindan compatibilidad avanzada para actualizaciones en la aplicación. Las tecnologías de implementación como Java Web Start y el complemento de Java se incluyen como parte de la instalación del JRE. Dichas tecnologías simplifican la activación de aplicaciones y también ofrecen soporte avanzado para próximas actualizaciones del JRE. A continuación se muestran algunos ejemplos:

Java Web Start

Con Java Web Start puede lanzar aplicaciones repletas de características solamente con un clic desde su navegador web.

Complemento de Java

El complemento de Java establece una conexión entre navegadores populares y la plataforma de Java, de modo que pueda ejecutar sus applets para sitios web en un navegador de escritorio.

Bibliotecas de lenguaje y utilidades

Una colección de archivos de clase de Java se conoce como paquete en Java. El JRE incluye varios paquetes en Java para dar soporte al control de versiones, la administración y la supervisión. A continuación se muestran algunos ejemplos de paquetes:

Marco de colecciones

El marco de colecciones es una arquitectura unificada que incluye interfaces para mejorar el almacenamiento y el procesamiento de datos de aplicaciones.

API de preferencias

La API de preferencias permite a varios usuarios de la misma máquina definir su propio grupo de preferencias de aplicación.

Registro

Los paquetes de registro producen informes de registro para la resolución de incidentes como errores de seguridad, fallos de rendimiento y errores de configuración.

Java Archive

Java Archive (JAR) es un formato de archivo independiente de plataformas que le permite agrupar varios archivos para reducir el tamaño de los archivos de su aplicación y mejorar de manera notable la velocidad de descarga.

Librerías de integración

El JRE incluye un buen número de bibliotecas de integración que ayuda a los desarrolladores a crear conexiones de datos integrales entre sus servicios y aplicaciones. A continuación se muestran algunas bibliotecas de ejemplo:

Java IDL

Java Interface Definition Language (IDL), basado en la arquitectura Common Object Request Broker Architecture (CORBA), admite objetos de datos distribuidos, es decir, objetos que interactúan en diferentes plataformas dentro de una red. Por ejemplo, Java IDL permite que objetos escritos en Java interactúen con otros escritos en otro lenguaje, como C, C++ o COBOL.

Java Database Connectivity

Los desarrolladores utilizan la API de Java Database Connectivity (JDBC) para escribir aplicaciones que pueden acceder a bases de datos, hojas de cálculo y archivos remotos.

Java Naming and Directory Interface

Java Naming and Directory Interface (JNDI) es un servicio de directorio que permite a los clientes crear aplicaciones portátiles que obtienen información de bases de datos externas mediante reglas de asignación de nombres.

¿Qué es AWS SDK para Java?

El kit de desarrollo de software (SDK) de AWS para Java simplifica el uso de los servicios de AWS, ya que ofrece un conjunto de bibliotecas que a los desarrolladores que usan Java les resultan lógicas y familiares. Admite abstracciones de alto nivel para un desarrollo simplificado. Las bibliotecas de Java de código abierto centradas en AWS están disponibles junto con ejemplos de código y una guía de referencia de la API de Java.
 
Los ejemplos de código del AWS SDK para Java 2.0 en GitHub contienen ejemplos de código de Java y casos de uso del mundo real para que los servicios de AWS ayuden a acelerar el desarrollo de sus aplicaciones. Además, la guía de referencia de la API de AWS SDK para Java describe las operaciones de la API para la versión más reciente del AWS SDK para Java. La guía de referencia también ofrece ejemplos de solicitudes, respuestas y errores de los protocolos de servicios web compatibles.
 
Comience a usar AWS SDK para Java con la Guía para desarrolladores del AWS SDK para Java, o visite el Centro para desarrolladores de Java de AWS.                                           

Siguientes pasos con el entorno de ejecución de Java

Sign up for a free account
Regístrese para obtener una cuenta gratuita

Obtenga acceso instantáneo al nivel Gratuito de AWS.

Cree una cuenta gratuita 
Standard Product Icons (Start Building) Squid Ink
Comenzar a crear en la consola

Comience a crear con el entorno de ejecución de Java en la consola de administración de AWS.

Inicie sesión