2010-02-16 11 views
27

A decir verdad, estoy bastante confundido con todos estos términos (JDK/JRE/Java SDK). No estoy seguro de lo que hace cada uno.JDK/JRE/JVM/Java SDK | a que se refieren ellos? A veces puedes desarrollar con JRE y a veces necesitas JDK?

Cuando comencé a hacer ejemplos simples de Java en eclipse, estoy bastante seguro de que solo tenía el JRE, que creía que era el instalador predeterminado de Java que los usuarios comunes usan para ejecutar programas/applets de Java en su sistema.

Sin embargo, ahora en clase estamos usando Google Appengine, y esto requiere el JDK, que supongo que es el mismo que Java SDK. Después de perder algo de tiempo descubriendo que instalar el JDK significaba que también tenía que agregar java/bin a las variables de entorno para que javac -version funcione en el símbolo del sistema. Encuentro que solo el JDK tiene javac ...

Cómo ¿Mis primeros programas Java funcionaban sin haber instalado el JDK y, por lo tanto, no tener Java? Y realmente es la pregunta principal ... ¿Cuál es la diferencia entre JRE y JDK, y cuándo usas cada uno?

Gracias :)

+0

Este enlace sería bastante útil para entender jre, jdk: http://docs.oracle.com/javase/8/docs/ –

Respuesta

17

Eclipse tiene su propio compilador incorporado (llamado ecj), que es probablemente la razón por la que podría salirse con la suya sin tener el JDK instalado para usarlo. No usa javac.

Google App Engine usa el javac que viene con el JDK.

+0

pero jre debería estar instalado? – Mahi

+0

@Mahi Sí, necesita instalar JRE para ejecutar Eclipse. –

35

JRE = Java Runtime Environment - lo que necesita para ejecutar programas/software que requieren Java o bibliotecas de uso escritas en Java. Por ejemplo, OpenOffice requiere el Java Runtime Environment

JDK/Java SDK Java Development Kit =/Java Software Development Kit - lo que necesita para escribir programas que requieren o utilizan las bibliotecas de Java escrito en Java. Por ejemplo, si escribiera su propia herramienta de procesamiento de palabras en Java.

java viene con el JRE porque lanza la máquina virtual (máquina virtual). Puede tomar en class archivos que son archivos que se han compilado utilizando el JDK.

El JDK viene con javac porque eso es lo que necesita para compilar sus archivos .java en archivos .class que luego pueden ejecutarse en el JRE.

+1

¿Estás seguro de que el JRE viene con javac? – malaverdiere

+0

Jaja, ese soy yo escribiendo a través de mi teléfono Android. ¡Arreglaré el error tipográfico! –

+0

Ojalá pudiera votar 2 respuestas como las mejores respuestas. Entre tú y Chris, ustedes me lo explicaron perfectamente. ¡Gracias! –

2

No hay forma de que use el JRE para compilar programas Java. javac, el compilador de Java, solo viene con el JDK.

  • Puede escribir programas de Java con cualquier editor de texto, no necesita nada especial para hacer esto.
  • Necesita el JRE para ejecutar programas Java. El JRE incluye la máquina virtual Java, necesaria para ejecutar programas Java ya compilados.
  • Necesita el JDK para compilar programas Java. Entonces, si usted es un desarrollador de Java, puede instalar JDK solo, ya que viene con las herramientas necesarias para compilar, además de Java Virtual Machine.
+4

En realidad, eso es correcto, siempre y cuando no tenga en cuenta el eclipse. Pero esta es la pregunta original que menciona el eclipse, está mal. Ver la respuesta de Chris Jester-Young. (Aunque tengo que admitir que trabajé varios años con eclipse sin darme cuenta de que no usa javac) –

+1

tampoco lo sabía. – Cesar

3

¿Cuál es la diferencia entre el JRE y JDK y cuándo se utiliza cada uno?

JRE: Java Runtime Environment. Se usa solo para ejecutar programas Java. Como se mencionó Chris Jester -Young, Eclipse tenía un compilador incorporado. Es por eso que sólo necesita JRE (para ejecutar Eclipse)

Si envía un programa Java, lo único que el cliente necesita tener es este entorno tiempo de ejecución

JDK: Java Develpment Kit, esto también incluye un JRE en el interior, pero adicionalmente tiene otras herramientas para el desarrollo del programa, como el compilador de java javac, entre muchos otros.

Si desea crear un programa Java, debe usar esto.

1

'A veces puede desarrollar con jre'

No. Never.

Desarrolla con el kit de desarrollo de Java. Se ejecuta con Java Runtime Environment o Engine o como se llame.

Cuestiones relacionadas