¿Cuál es la diferencia entre "java" ubicado dentro de jdk / bin / y jdk / jre / bin

13

Después de descargar Oracle JDK y descomprimirlo, puedo ver que existen dos ejecutables "java" en dos directorios diferentes.

Cuál debe usarse como base primaria. ¿O ambos son iguales en dos ubicaciones diferentes?

TheManish
fuente

Respuestas:

14

El contenido de jdk/bin/es el Java que se incluye con el Kit de desarrolladores de Java. El interior de Java jdk/jre/binsería el Java Runtime Environment del Java.

Si tiene la versión empaquetada JDK de Java, use la que está en jdk/bin/.

Pero son lo mismo

Si observa los ejecutables, en realidad no hay diferencia en ellos, por lo que realmente no importa.

$ pwd
/usr/java/jdk1.7.0_45

$ ll jre/bin/java
-rwxr-xr-x. 1 root root 7718 Oct  8  2013 jre/bin/java
[saml@greeneggs jdk1.7.0_45]$ ls -l bin/java
-rwxr-xr-x. 1 root root 7718 Oct  8  2013 bin/java

$ cmp jre/bin/java bin/java
$
slm
fuente
¡Bueno! Así que me pregunto por qué proporcionan dos cosas similares. Lo que hice fue desempacar el paquete jdk. Espero que el que está dentro de jdk / bin funcione sin problemas en todas las etapas requeridas de JRE. Estoy en lo cierto?
TheManish
44
@ManishShrestha: dado el nombre del directorio en el que se encuentra, esa sería mi expectativa también. Proporcionan el JRE por sí solo para que pueda ejecutar aplicaciones. El JDK es desarrollar aplicaciones. En cuanto a por qué el JRE está incluido dentro de JDK, tendría que preguntarle a Oracle.
slm
1
Gracias por notar a ese compañero. Intentaré preguntarle a Oracle en algún momento libre. :)
TheManish
Esto todavía no responde la pregunta correctamente. ¿Cuál es el propósito del javaejecutable en jdk / bin, ya que básicamente necesitamos un JRE completo para ejecutar nuestras aplicaciones? Por supuesto, Oracle debe proporcionar una respuesta aquí.
wget