Java
Tutorial Java: Instalación de Java
Java instalación: guía paso a paso. Sigue una guía paso a paso para instalar Java en tu sistema con ejemplos detallados.
Aprende Java y certifícateIntroducción a Java: qué es Java y cuál es su historia
Java es un lenguaje de programación de propósito general, orientado a objetos y diseñado para tener el menor número posible de dependencias de implementación. Fue creado por James Gosling y desarrollado por Sun Microsystems, siendo lanzado al público en 1995. Desde entonces, Java se ha convertido en uno de los lenguajes más populares y utilizados a nivel mundial.
El objetivo principal de Java es permitir a los desarrolladores escribir el código una sola vez y ejecutarlo en cualquier plataforma que disponga de una Máquina Virtual de Java (JVM). Esta característica, conocida como "write once, run anywhere" ("escribir una vez, ejecutar en cualquier lugar"), hace que código escrito en Java sea portable y más fácil de ejecutar en diferentes sistemas operativos sin necesidad de recompilación.
La historia de Java comienza a principios de los años 90, cuando un pequeño equipo de ingenieros de Sun Microsystems inició el proyecto "Green". Su intención era desarrollar un lenguaje que pudiera ser utilizado en diversos dispositivos electrónicos. Inicialmente llamado "Oak", el lenguaje fue rebautizado como Java debido a problemas de marca registrada.
Desde su lanzamiento, Java ha ido evolucionado. En 1997, se publicó Java 1.1, introduciendo mejoras como los JavaBeans y la compatibilidad con RMI (Remote Method Invocation). A lo largo de los años, se han incorporado funcionalidades como generics, lambda expressions y mejoras en la API de concurrencia.
Con la adquisición de Sun Microsystems por parte de Oracle Corporation en 2010, Java pasó a ser mantenido y desarrollado por Oracle. Se ha seguido desarrollando el lenguaje y sacando actualizaciones y mejoras en el rendimiento y la seguridad. La comunidad sigue contribuye al ecosistema de Java con librerías y frameworks.
Java no solo es relevante en el ámbito del desarrollo de aplicaciones de escritorio, sino que también tiene una presencia importante en el desarrollo web, aplicaciones móviles (especialmente en Android) y sistemas empresariales.
Qué es el JDK, JRE, JVM y qué diferencias hay
La Máquina Virtual de Java (JVM) es el componente que permite ejecutar programas escritos en Java. Se encarga de interpretar el bytecode generado por el compilador y de gestionar la ejecución del programa en el entorno del sistema operativo. La JVM proporciona una capa de abstracción que hace que el código Java sea independiente de la plataforma subyacente.
El Entorno de Ejecución de Java (JRE) es un conjunto de herramientas y bibliotecas que proporcionan todo lo necesario para ejecutar aplicaciones Java. Incluye la JVM y una colección de clases y archivos de soporte que permiten que las aplicaciones funcionen correctamente. El JRE es lo que se instala en un sistema para poder ejecutar programas desarrollados en Java sin necesidad de compilar código.
El Kit de Desarrollo de Java (JDK) es un conjunto completo de herramientas para el desarrollo de aplicaciones Java. Además de contener el JRE y, por tanto, la JVM y las bibliotecas de clases básicas, incluye herramientas de desarrollo como el compilador javac, el depurador jdb y otras utilidades necesarias para escribir, compilar y depurar código Java.
La diferencia clave entre el JRE y el JDK radica en que el JRE está orientado a la ejecución de aplicaciones, mientras que el JDK está diseñado para el desarrollo.
Al programar, se escribe código fuente en archivos con extensión .java, que luego son compilados por el compilador javac en bytecode, generando archivos .class. Estos archivos de bytecode son interpretados y ejecutados por la JVM.
El JDK que se instala incluye también las APIs estándar de Java, que son conjuntos de clases e interfaces que proporcionan funcionalidades comunes como estructuras de datos, entrada/salida, gestión de red, interfaces gráficas y más.
Cuando se habla de versiones de Java, generalmente se hace referencia a la versión del JDK, ya que esta incluye las actualizaciones tanto de la JVM como de las APIs y herramientas de desarrollo.
Existen diferentes distribuciones y proveedores del JDK, como Oracle, OpenJDK y otros. Aunque todos cumplen con las especificaciones de Java, pueden haber pequeñas diferencias en términos de licencia, soporte y herramientas adicionales.
Instalación de JDK de Oracle
Para iniciar el desarrollo en Java, se puede instalar el JDK de Oracle. A continuación, se indican los pasos para su instalación en los sistemas operativos más utilizados.
Descarga del JDK desde el sitio oficial
1. Acceder al sitio web oficial de Oracle para descargar el Java SE Development Kit (JDK). La página de descargas está disponible en la sección de Java SE Downloads.
2. Seleccionar la versión que se quiera del JDK.
3. En la lista de descargas, identificar el instalador correspondiente al sistema operativo: Windows, macOS o Linux. Verificar que se selecciona la arquitectura correcta.
Instalación en Windows
1. Descargar el archivo instalador con extensión .exe para Windows.
2. Ejecutar el instalador haciendo doble clic en el archivo descargado. Si el sistema solicita confirmación, aceptar para continuar.
3. Seguir las indicaciones del asistente de instalación. Por defecto, el JDK se instalará en C:\Program Files\Java\jdk<versión>.
4. Durante la instalación, se puede personalizar el directorio de instalación y las características opcionales. Se recomienda mantener las configuraciones predeterminadas.
5. Al finalizar, el asistente confirmará que la instalación del JDK se ha realizado con éxito.
Instalación en macOS
1. Descargar el archivo con extensión .dmg para macOS desde el sitio de Oracle.
2. Abrir el archivo .dmg una vez completada la descarga. Se mostrará un paquete de instalación .pkg.
3. Hacer doble clic en el paquete .pkg para iniciar el instalador. Es posible que se solicite la contraseña de administrador.
4. Seguir las instrucciones del asistente de instalación, aceptando los términos de la licencia y utilizando las opciones por defecto.
5. Al completar el proceso, el JDK se habrá instalado en /Library/Java/JavaVirtualMachines/jdk<versión>.jdk.
Instalación en Linux
1. Descargar el paquete correspondiente a Linux. Oracle proporciona archivos en formato .tar.gz para distintas distribuciones.
2. Abrir una terminal y navegar hasta el directorio donde está el archivo descargado.
3. Extraer el contenido con el comando:
tar -xzvf jdk-*_linux-x64_bin.tar.gz
4. Mover el directorio extraído a la ubicación deseada, por ejemplo, /usr/local/java/:
sudo mv jdk* /usr/local/java/
5. Verificar que los permisos del directorio son adecuados para el usuario que usará Java.
Verificación de la instalación
Para comprobar que el JDK de Oracle se instaló correctamente, se puede verificar la versión de Java en la línea de comandos.
En Windows, abrir el Símbolo del sistema y ejecutar:
java -version
En macOS y Linux, abrir una terminal y ejecutar:
java -version
Si la instalación fue exitosa, se mostrará la versión de Java instalada, confirmando que el JDK está operativo.
Es posible que sea necesario configurar las variables de entorno para que el sistema reconozca la instalación de Java.
Instalación de JDK de Eclipse Temurin
Para el desarrollo en Java, otra opción es utilizar el JDK de Eclipse Temurin, proporcionado por el proyecto Adoptium de la Fundación Eclipse. Eclipse Temurin ofrece una distribución gratuita y de código abierto del OpenJDK.
Descarga de Eclipse Temurin
1. Visitar el sitio oficial de Adoptium en adoptium.net.
2. En la página principal, se encuentra disponible la última versión estable del JDK. Asegurarse de que está seleccionada la versión que se quiere de Java.
3. Si se quiere instalar otra versión diferente, entrar en Otras plataformas y versiones y elegir la versión que se quiera.
4. Seleccionar el sistema operativo correspondiente: Windows, macOS o Linux.
5. Elegir la arquitectura adecuada.
6. Seleccionar el tipo de paquete, en este caso JDK.
Instalación en Windows
1. Descargar el instalador MSI para Windows.
2. Al finalizar la descarga, ejecutar el archivo MSI haciendo doble clic.
3. En el asistente de instalación, aceptar los términos de la licencia y pulsar Next para continuar.
4. Elegir el directorio de instalación si se desea cambiar el predeterminado. Por defecto, se instala en C:\Program Files\Eclipse Adoptium\jdk.
5. Durante la instalación, se pueden configurar las variables de entorno y asociar los archivos .jar con Java. Se recomienda activar la opción "Set JAVA_HOME variable" para facilitar la configuración.
6. Hacer clic en Install para iniciar la instalación. Si se solicita permiso de administrador, otorgarlo para proceder.
7. Al concluir, el asistente confirmará que la instalación de Eclipse Temurin se realizó correctamente.
Instalación en macOS
1. Descargar el paquete PKG para macOS desde el sitio de Adoptium.
2. Abrir el archivo PKG haciendo doble clic. Si el sistema solicita confirmación para abrir un paquete de Internet, aceptar.
3. Seguir las indicaciones del instalador, aceptando los términos y condiciones. Seleccionar el destino de la instalación si es necesario.
4. Pulsar Install para comenzar. Es probable que se solicite la contraseña de administrador; introducirla cuando se requiera.
5. Al finalizar, se mostrará un mensaje indicando que Eclipse Temurin se instaló exitosamente en el sistema.
Instalación en Linux
1. Descargar el paquete adecuado para Linux. Se ofrecen formatos como .tar.gz, .deb (para Debian/Ubuntu) y .rpm (para Fedora/CentOS).
2. Para distribuciones basadas en Debian:
- Descargar el archivo .deb.
- Abrir una terminal y navegar hasta el directorio de descarga.
- Ejecutar la instalación con:
sudo dpkg -i temurin-*-jdk*_linux-x64_bin.deb
3. Para distribuciones basadas en RPM:
- Descargar el archivo .rpm.
- En una terminal, acceder al directorio de descarga.
- Instalar el paquete utilizando:
sudo rpm -ivh temurin-*-jdk*_linux-x64_bin.rpm
4. Alternativamente, usar el paquete .tar.gz:
- Descargar el archivo .tar.gz.
- Extraer el contenido en el directorio deseado, por ejemplo /opt/java/:
sudo mkdir -p /opt/java
sudo tar -xzf temurin-*-jdk*_linux-x64_bin.tar.gz -C /opt/java/
- Configurar las variables de entorno para apuntar al JDK instalado.
Configurar variables de entorno para Java
Para que el sistema operativo reconozca los comandos de Java y permita su ejecución desde cualquier ubicación, es esencial configurar correctamente las variables de entorno. Este paso garantiza que herramientas como javac
y java
estén disponibles globalmente en la línea de comandos.
Configuración en Windows
1. Acceder a las variables de entorno:
- Acceder al Panel de Control y seleccionar Sistema y seguridad, luego Sistema.
- En la ventana que aparece, elegir Configuración avanzada del sistema.
- En la pestaña Opciones avanzadas, pulsar el botón Variables de entorno.
2. Crear la variable JAVA_HOME:
- En Variables del sistema o Variables de usuario, comprobar si existe JAVA_HOME.
- Si no existe, pulsar Nueva... para crearla.
- Asignar como Nombre de la variable:
JAVA_HOME
. - Establecer como Valor de la variable la ruta donde se instaló el JDK.
3. Modificar la variable Path:
- En la lista de Variables del sistema o Variables de usuario, seleccionar Path y pulsar Editar.
- Añadir una nueva entrada con
%JAVA_HOME%\bin
.
- Esto permite que el sistema encuentre los ejecutables de Java ubicados en el directorio
bin
.
4. Guardar los cambios:
- Confirmar todas las ventanas pulsando Aceptar.
- Reiniciar cualquier terminal o consola abierta para aplicar la nueva configuración.
5. Verificar la configuración:
- Abrir Símbolo del sistema o PowerShell.
- Ejecutar
java -version
yjavac -version
. - Si se muestran las versiones instaladas, significa que Java está correctamente configurado.
Configuración en macOS
Aunque en macOS Java suele configurarse automáticamente, establecer la variable JAVA_HOME puede ser necesario para ciertos desarrollos.
1. Abrir la Terminal.
2. Editar el archivo de configuración del shell:
- Si se utiliza bash, editar el archivo
~/.bash_profile
o~/.bashrc
. - Si se utiliza zsh (shell por defecto en versiones recientes), editar
~/.zshrc
.
3. Añadir la variable JAVA_HOME:
export JAVA_HOME=$(/usr/libexec/java_home)
- Este comando asigna JAVA_HOME al directorio del JDK instalado.
4. Actualizar el Path (si es necesario):
export PATH=$JAVA_HOME/bin:$PATH
5. Aplicar los cambios:
- Ejecutar
source ~/.bash_profile
osource ~/.zshrc
para recargar la configuración.
6. Verificar la configuración:
- Ejecutar
echo $JAVA_HOME
para comprobar la ruta asignada. - Ejecutar
java -version
yjavac -version
para asegurar que Java está disponible.
Configuración en Linux
Los pasos pueden variar ligeramente según la distribución, pero el procedimiento general es el siguiente:
1. Abrir una terminal.
2. Editar el archivo de configuración del shell:
- Para bash, editar
~/.bashrc
o~/.bash_profile
. - Para zsh, editar
~/.zshrc
.
3. Establecer JAVA_HOME:
export JAVA_HOME=/ruta/al/jdk
- Reemplazar
/ruta/al/jdk
por la ruta real donde se instaló el JDK. Por ejemplo:/usr/local/java/jdk
.
4. Actualizar el Path:
export PATH=$JAVA_HOME/bin:$PATH
- Esto añade el directorio
bin
del JDK al PATH del sistema.
5. Aplicar los cambios:
- Guardar el archivo y ejecutar
source ~/.bashrc
o el archivo correspondiente para recargar la configuración.
6. Comprobar la configuración:
- Ejecutar
echo $JAVA_HOME
para verificar que la variable apunta al directorio correcto. - Ejecutar
java -version
yjavac -version
para confirmar que Java funciona adecuadamente.
Ejercicios de esta lección Instalación de Java
Evalúa tus conocimientos de esta lección Instalación de Java con nuestros retos de programación de tipo Test, Puzzle, Código y Proyecto con VSCode, guiados por IA.
Clases abstractas
Streams: reduce()
Streams: flatMap()
Llamada y sobrecarga de funciones
Métodos referenciados
Métodos de la clase String
Representación de Fecha
Operadores lógicos
Tipos de datos
Estructuras de iteración
Streams: forEach()
Objetos
Funciones lambda
Uso de Scanner
CRUD en Java de modelo Customer sobre un ArrayList
Tipos de variables
Streams: collect()
Operadores aritméticos
Interfaz funcional Consumer
API java.nio 2
API Optional
Interfaz funcional Function
Encapsulación
Interfaces
Uso de API Optional
Representación de Hora
Herencia básica
Clases y objetos
Interfaz funcional Supplier
HashMap
Sobrecarga de métodos
Polimorfismo de tiempo de ejecución
OOP en Java
Creación de Streams
Streams: min max
Métodos avanzados de la clase String
Polimorfismo de tiempo de compilación
Excepciones
Herencia avanzada
Estructuras de selección
Uso de interfaces
HashSet
Objeto Scanner
Streams: filter()
Operaciones de Streams
Interfaz funcional Predicate
Streams: sorted()
Configuración de entorno
CRUD en Java de modelo Customer sobre un HashMap
Uso de variables
Clases
Streams: distinct()
Streams: count()
ArrayList
Datos de referencia
Interfaces funcionales
Métodos básicos de la clase String
Instalación
Funciones
Estructuras de control
Herencia de clases
Streams: map()
Funciones y encapsulamiento
Streams: match
Gestión de errores y excepciones
Datos primitivos
Todas las lecciones de Java
Accede a todas las lecciones de Java y aprende con ejemplos prácticos de código y ejercicios de programación con IDE web sin instalar nada.
Instalación De Java
Introducción Y Entorno
Configuración De Entorno Java
Introducción Y Entorno
Ecosistema Jakarta Ee De Java
Introducción Y Entorno
Tipos De Datos
Sintaxis
Variables
Sintaxis
Operadores
Sintaxis
Estructuras De Control
Sintaxis
Funciones
Sintaxis
Excepciones
Programación Orientada A Objetos
Clases Y Objetos
Programación Orientada A Objetos
Encapsulación
Programación Orientada A Objetos
Herencia
Programación Orientada A Objetos
Clases Abstractas
Programación Orientada A Objetos
Interfaces
Programación Orientada A Objetos
Sobrecarga De Métodos
Programación Orientada A Objetos
Polimorfismo
Programación Orientada A Objetos
La Clase Scanner
Programación Orientada A Objetos
Métodos De La Clase String
Programación Orientada A Objetos
Listas
Framework Collections
Conjuntos
Framework Collections
Mapas
Framework Collections
Funciones Lambda
Programación Funcional
Interfaz Funcional Consumer
Programación Funcional
Interfaz Funcional Predicate
Programación Funcional
Interfaz Funcional Supplier
Programación Funcional
Interfaz Funcional Function
Programación Funcional
Métodos Referenciados
Programación Funcional
Creación De Streams
Programación Funcional
Operaciones Intermedias Con Streams: Map()
Programación Funcional
Operaciones Intermedias Con Streams: Filter()
Programación Funcional
Operaciones Intermedias Con Streams: Distinct()
Programación Funcional
Operaciones Finales Con Streams: Collect()
Programación Funcional
Operaciones Finales Con Streams: Min Max
Programación Funcional
Operaciones Intermedias Con Streams: Flatmap()
Programación Funcional
Operaciones Intermedias Con Streams: Sorted()
Programación Funcional
Operaciones Finales Con Streams: Reduce()
Programación Funcional
Operaciones Finales Con Streams: Foreach()
Programación Funcional
Operaciones Finales Con Streams: Count()
Programación Funcional
Operaciones Finales Con Streams: Match
Programación Funcional
Api Optional
Programación Funcional
Api Java.nio 2
Entrada Y Salida (Io)
Api Java.time
Api Java.time
Certificados de superación de Java
Supera todos los ejercicios de programación del curso de Java y obtén certificados de superación para mejorar tu currículum y tu empleabilidad.
En esta lección
Objetivos de aprendizaje de esta lección
- Comprender la historia y la evolución de Java
- Identificar la función de JVM, JRE y JDK
- Instalar el JDK de Oracle y Eclipse Temurin
- Configurar variables de entorno para ejecutar Java