Instalando Java

Héctor Louzao, Ankur Sinha, alciregi Versión F39 Last review: 2023-11-28

Java es un popular lenguaje de programación que le permite ejecutar programas en muchas plataformas, incluyendo Fedora. Si usted desea crear programas Java, necesita instalar un JDK (Kit de Desarrollo Java). Si desea ejecutar un programa Java, puede hacerlo sobre una JVM (Máquina Virtual Java), que se suministra con el JRE (Entorno de Tiempo de Ejecución Java). Si duda, instale el JDK puesto que a veces se requiere aunque la intención no sea escribir programas Java.

Existen muchos sabores de Java y también existen muchas versiones de cada sabor. Si desea ejecutar una aplicación específica, compruebe la documentación de ese software para ver que versiones de Java están soportadas o han sido probadas. La mayoría de las aplicaciones Java se ejecutan sobre una de las siguientes:

  • OpenJDK — una implementación de código abierto de la Plataforma Java Platform, Edición Estándar. Esta es la versión preferida y se incluye en Fedora.

  • Oracle Java SE — The former Oracle SE is no longer distributed by Fedora.

Puede encontrar las siguiente Versiones:

  • The Long Term Support LTS Versions, currently 1.8, 11, 17

  • Latest, currently 21

Instalación de OpenJDK

Para instalar OpenJDK desde el repositorio Fedora:

  • Ejecute el siguiente comando para enumerar las versiones disponibles:

dnf search openjdk
  • Copia la versión de OpenJDK que desee para instalar.

Various flavors of OpenJDK are available. For information about these options, search the OpenJDK web site.
  • Run the following command to install OpenJDK:

sudo dnf install <openjdk-package-name>

Examples:

sudo dnf install java-1.8.0-openjdk.x86_64
sudo dnf install java-11-openjdk.x86_64
sudo dnf install java-latest-openjdk.x86_64

Installing OpenJDK for development

In order to install the Java Development Kit, runtime environment and associated development tools.

sudo dnf install <openjdk-package-name>-devel

Examples:

sudo dnf install java-1.8.0-openjdk-devel.x86_64
sudo dnf install java-11-openjdk-devel.x86_64
sudo dnf install java-latest-openjdk-devel.x86_64

Instalar Java SE de Oracle

Esta página analiza fuentes de software de terceros que no están afiliadas ni respaldadas oficialmente por el Proyecto Fedora. Úselas a su propia discreción. Fedora recomienda el uso de software libre y de código abierto, y evitar el software protegido por patentes.

Para instalar Oracle Java SE:

  1. Navegue en la página de descargas de Oracle Java SE, y elija la versión de Java que desea utilizar.

  2. Acepta el acuerdo de licencia y descarga el archivo tar.gz apropiado para su arquitectura del sistema.

  3. Unpack the tar.gz file somewhere. For example, to extract it to the /opt directory: sudo tar xf Downloads/jdk-18_linux-x64_bin.tar.gz -C /opt

  4. Set the JAVA_HOME environment variable to that directory. For example: export JAVA_HOME=/opt/jdk-21.0.1.1

Note: Always make sure to download latest version available.

Intercambiar entre Versiones de Java

Quizá tenga instalados varias versiones de Java en su sistema, puede intercambiar desde una.

Tras ejecutar esta instrucción, verá una lista de todas las versiones de Java instaladas, seleccione:

sudo alternatives --config java

Simply enter a selection number to choose which java executable should be used by default.

  • verify:

java -version

Referencia JDK

Consulte el listado siguiente como referencia de acrónimos relacionados con Java:

JRE

Entorno En Tiempo de Ejecución de Java; requerido para correr código Java y aplicaciones

JVM

Java Virtual Machine; componente principal del JRE

JDK

Java Development Kit; requerido solo para desarrollo, codificar

SDK

Software Development Kit; consulte JDK

JavaWS

Java Web Start es un marco de trabajo para iniciar aplicación desde Internet

JavaFX

JavaFX es una plataforma para crear y entregar escritorio y Rich Internet Apps

OpenJFX

es la implementación JavaFX Open Source

OpenJDK

Proyecto Open Source siendo la plataforma de Java openjdk.java.net.

IcedTea

es un proyecto mantenido para OpenJDK (de acuerdo solo a desarrolladores) icedtea.classpath.org

IcedTea-Web

es el paquete de Java Web Start (contiene solo JavaWS, no más applets); instala para ejecutar archivos JNPL

applets

son tecnología obsoleta; No implementada en ningún paquete reciente

JSE, J2SE, JEE, …

acrónimo obsolete para Edición Java Standard & Enterprise; JavaSE es como JRE

Componentes de JDK

EL JDK tiene como sus componentes primarios una colección de herramientas de programación, incluyendo:

appletviewer

esta herramienta puede ser utilizada para ejecutar y depurar applets de Java sin un navegador web

apt

la herramienta de anotación-proceso

extcheck

una utilidad la cual puede detectar conflictos de archivo JAR

idlj

el compilador IDL-to-Java. Esta utilidad genera vínculos Java desde un archivo IDL de Java.

jabswitch

el Java Access Bridge. Expone tecnologías asistidas en sistemas de Microsoft Windows.

java

el cargador para aplicaciones de Java. Esta herramienta es un intérprete y puede interpretar los archivos de clase generados por el compilador javac. Ahora un único lanzador es utilizado para ambos desarrolladores y despliegues. El antiguo lanzador de despliegue, jre, no viene más con Sun JDK, y a su vez ha sido sustituido por este cargador de java nuevo.

javac

el compilador de Java, el cual convierte código fuente a bytecode de Java

javadoc

el generador de documentación, el cual genera automáticamente documentación desde comentarios del código fuente

jar

el archivador, cuyos paquetes relacionados biblioteca de clase interno a un archivo JAR único. Esta herramienta además ayuda a gestionar archivos JAR.

javafxpackager

herramienta para maquete y firma de aplicaciones JavaFX

jarsigner

la firma jar y herramienta de verificación

javah

la cabecera C y generador de resguardo, utilizado para escribir métodos nativos

javap

el archivo de clase desensamblador

javaws

el lanzador de Web Java para aplicaciones JNLP

JConsole

Monitorizador Java y Consola de Gestión

jdb

el depurador

jhat

Herramienta de Análisis de Pila de Java (experimental)

jinfo

Esta utilizad obtiene información de configuración desde un proceso o volcado de ejecución de Java. (experimental)

jmap

Esta utilidad extrae la distribución de memoria para Java y puede declarar distribuciones de memoria de objeto compartida o detalles de pila de memoria de un proceso dado o volcado de núcleo. (experimental)

jmc

Control de Misión Java

jps

Herramienta de Proceso de Máquina Virtual de Java enumera los HotSpor de las Máquinas de Java Virtual (JVM) en el sistema destino. (experimental)

jrunscript

Intérprete de guion de línea de instrucción para Java.

jstack

utilidad la cual declara trazas de pila Java de hilos Java (experimental)

jstat

Estadística de JVM monitorizando herramientas (experimental)

jstatd

demonio jstar (experimental)

keytool

herramienta para manipular el almacén de claves

pack200

herramienta de compresión JAR

policytool

la herramienta de normativa de creación y gestión, la cual puede determinar normativa para un tiempo de ejecución de Java, especificando cuales permisos están disponibles para código desde varias fuentes

VisualVM

integración de varias herramientas visuales de línea-instrucción de JDK y clarificación sueva necesaria] rendimiento y capacidades de perfilado de memoria

wsimport

genera artefactos portables JAX-WS para invocar un servicio de web.

xjc

Parte del API de Java para Vínculos API XML (JAXB). Acepta un esquema XML y genera clases de Java.

El JDK viene también con un Entorno de Ejecución Java completo, usualmente invocado un tiempo de ejecución privado, debido al factor que está separado desde el JRE "regular" y tiene contenido extra. Consiste en una Máquina Virtual de Java y todo de las bibliotecas de clase presente en el entorno de producción, así como unas bibliotecas adicionales solamente útiles para desarrolladores, tales como las bibliotecas de internacionalización y las bibliotecas IDL.

Recursos adicionales

Para Java en Fedora vea:

Para más información sobre Java en general, vea:

Para desarrollo de aplicaciones Java considere los siguientes IDEs de código abierto: