Paquetes principales de Java

JVM

Fedora permite que múltiples Java Virtual Machines(Máquinas Virtuales Java) (JVMs) sean empaquetadas independientemente. Los paquetes Java no deberían depender directamente de ninguna JVM en particular, sino que requiere de uno de los tres paquetes JVM virtuales dependiendo de la funcionalidad que se requiera.

java-headless

This package provides a working Java Runtime Environment (JRE) with some functionality disabled. Graphics and audio support may be unavailable in this case. java-headless provides functionality that is enough for most of packages and avoids pulling in a number of graphics and audio libraries as dependencies. Requirement on java-headless is appropriate for most of Java packages.

java

Incluye la misma funcionalidad base que java-headless, pero también implementa subsistemas de audio y gráficos. Los paquetes deberían requerir java si necesitan alguna funcionalidad de estos subsistemas, por ejemplo la creación de .GUI (Interfaz Gráfica de Usuario) usando la librería AWT (Conjunto de Herramientas de X Window).

java-devel

Provides full Java Development Kit (JDK). In most cases only packages related to Java development should have runtime dependencies on java-devel. Runtime packages should require java-headless or java. Some packages not strictly related to java development need access to libraries included with JDK, but not with JRE (for example tools.jar). That is one of few cases where requiring java-devel may be necessary.

Los paquetes que requieren una versión mínima estándar de Java pueden añadir dependencias versionadas en uno de los paquetes virtuales que proporcionan entorno Java . Por ejemplo si paquetes que dependen de la funcionalidad de JDK 8 pueden requerir java-headless >= 1:1.8.0.

Époco en versiones de paquetes JVM

For compatibility with JPackage project packages providing Java 1.6.0 or later use epoch equal to 1. This was necessary because package java-1.5.0-ibm from JPackage project had epoch 1 for some reason. Therefore packages providing other implementations of JVM also had to use non-zero epoch in order to keep version ordering correct.

Java Packages Tools

Java Packages Tools are packaged as several binary RPM packages:

maven-local

This package provides a complete environment which is required to build Java packages using Apache Maven build system. This includes a default system version of Java Development Kit (JDK), Maven, a number of Maven plugins commonly used to build packages, various macros and utlilty tools. maven-local is usually declared as build dependency of Maven packages.

ivy-local

Analogously to maven-local, this package provides an environment required to build Java packages using Apache Ivy as dependency manager.

javapackages-local

Package providing a basic environment necessary to geterate and install metadata for system artifact repository.

javapackages-tools

Package owning basic Java directories and providing runtime support for Java packages. The great majority of Java packages depend on javapackages-tools.