java - openjdk windows
Diferencia entre openjdk-6-jre, openjdk-6-jre-headless, openjdk-6-jre-lib (2)
Estoy teniendo problemas para entender algunos de los conceptos básicos de Java JRE.
Necesito ejecutar el código Java en un sistema integrado y para esto necesito un Java Runtime Environment mínimo instalado en un kernel de Linux, es decir, el paquete mínimo necesario para ejecutar los binarios de Java. Creo que no es posible hacer esto solo con una JVM (el paquete JRE es necesario, ¿me equivoco aquí?)
La cuestión es que, al mirar los repositorios de Debian, no entiendo las diferencias entre los paquetes openjdk-6-jre
, openjdk-6-jre-headless
y openjdk-6-jre-lib
. ¿Los programas Java se ejecutarán solo con el primero? O, ¿son necesarios los tres?
Este es un problema, ya que existe una gran diferencia de tamaño (MB) entre ellos.
La razón principal para tener dos paquetes distintos disponibles son las dependencias de los paquetes. openjdk-6-jre
también dependerá de:
libasound2, libgif4, libjpeg62, libpng12-0, libpulse0 , libx11-6, libxext6, libxi6, libxrender1, libxtst6 and zlib1g
Y al contrario del comentario anterior, openjdk-6-jre
depende de openjdk-6-jre-headless
, lo que hace que este último sea solo un subconjunto.
Tiene razón en que necesitará un paquete jre para ejecutar cualquier aplicación java.
Como dice que está ejecutando en una plataforma integrada, asumo que la aplicación java que desea ejecutar no tiene una interfaz gráfica de usuario. En ese caso, estarás bien con openjdk-6-jre-headless
. Esto se explica en la página del paquete openjdk-6-jre-headless aquí "Tiempo de ejecución mínimo de Java: necesario para ejecutar programas Java no GUI".
Como puede ver en la página de detalles del paquete debian , openjdk-6-jre-headless
depende de openjdk-6-jre-lib
(entre otros paquetes), por lo que se instalará de cualquier manera.
Sin embargo, si la aplicación java que quieres ejecutar tiene una interfaz openjdk-6-jre
necesitarás openjdk-6-jre
lugar de openjdk-6-jre-headless
Editar: enlaces fijos.