2008-10-03 12 views

Respuesta

80

De esta wikipedia entry:

El JDK es un subconjunto de lo que se define en términos generales como un kit de desarrollo de software (SDK) en el sentido general. En las descripciones que acompañan a sus lanzamientos recientes para Java SE, EE y ME, Sun reconoce que bajo su terminología, el JDK forma el subconjunto del SDK que es responsable de la escritura y ejecución de los programas de Java. El resto del SDK se compone de software adicional, como Servidores de aplicaciones, Depuradores y Documentación.

El "software adicional" parece ser Glassfish, MySQL y NetBeans. This page ofrece una comparación de los diversos paquetes que puede obtener para Java EE SDK.

+0

¿SDK contiene (!) En su paquete, el "paquete" JDK? –

+0

El JRE está contenido dentro del JDK, sí. El JDK _es un_ kit de desarrollo de software (SDK). – jamesh

-1

Mi conjetura inicial sería que el SDK de Java es para construir la JVM mientras que el JDK es para crear aplicaciones para la JVM.

Editar: Aunque esto parece ser incorrecto en este momento. Sun está en el proceso de abrir la JVM (quizás incluso hayan terminado, ahora), así que no me sorprendería mucho si mi respuesta fuera correcta ... Pero por el momento, el SDK y el JDK son la misma cosa.

+0

¿A qué se refiere al construir la JVM? –

+0

Las aplicaciones Java se ejecutan dentro de Java Virtual Machine. Parte del JRE que se está abriendo al público, por lo que un SDK de Java sería útil para que las personas construyan JRE para sus plataformas. – Oli

+0

Disculpe, ¿de dónde sacó esta afirmación (un SDK de Java sería útil para que las personas construyan JRE para sus plataformas)? Creo que o no te estoy entendiendo o ese no es el objetivo del SDK de Java. Java SDK está formado por JRE y algunas herramientas como Javac, javap, javadoc ... –

1

No hay diferencia entre JDK y Java SDK. Ambos significan lo mismo. Creo que fue una decisión de RP en Sun cambiar de JDK a Java SDK. Creo que está de vuelta a JDK por ahora.

2

A Sun simplemente le gusta cambiar los nombres de las cosas sin motivo aparente. Mire los tres diferentes esquemas de numeración para SunOS/Solaris, o los dos esquemas de numeración para Java. ¿Es Java 1.6, Java 2 Versión 6 o Java 6?

1

Entonces, ¿por qué hay esos dos enlaces diferentes (SDK y JDK) para descargarlos?

+0

El primero es para la edición estándar de Java (JavaSE), el otro es la edición empresarial (JavaEE). Son dos productos diferentes. – agnul

-1

Hay dos productos, JavaSE y JavaEE. EE es la aplicación web/edición empresarial que permite el desarrollo y la ejecución de aplicaciones web. SE es el producto Java simple que no tiene detalles específicos de EE, pero es un subconjunto de EE. El SE viene en dos tipos, un JDK y un JRE.

Hay una gran diferencia que puede no ser obvia, y no estoy seguro si se aplica a todos los sistemas operativos pero en Windows el JRE no tiene el servidor HotSpot JVM, solo el cliente, el JDK tiene ambos, y, por lo que sé, todos los demás sistemas operativos tienen ambos para el JDK y el JRE. La verdadera diferencia es que el JDK contiene el compilador de Java, es decir, el JDK le permite compilar y ejecutar Java desde el código fuente, ya que el JRE solo permite la ejecución del código de bytes Java, que es el Origen que ya se ha compilado. Y sí, las versiones más recientes incluyen varios componentes adicionales, como el entorno de edición NetBeans y Java en la base de datos de memoria (derby/cloudscape), pero estos son opcionales.

+1

Por favor, lea nuevamente la pregunta. No se trata de JDK y JRE. –

1

Desde mi punto de vista no hay diferencia entre JDK y SDK en java. Podemos encontrar todas las herramientas de desarrollo, así como las instalaciones en ambos. es solo un alias proporcionado por el sol.

+0

nada nuevo en comparación con respuestas anteriores, ¿está allí ?-) – kleopatra

1

Mejor ejemplo para esta pregunta, SDK - Kit de desarrollo de software - Ej: JDK de Netbeans - Kit de desarrollo de Java. (Este es el compilador de Java).Sin JDK, no podemos ejecutar programas Java en SDK.

3

El JDK (Java Development Kit) es un SDK (Software Dev Kit).

Se utiliza para crear software/aplicaciones en Java y, por supuesto, incluye el JRE (Java Runtime Edition) para ejecutar ese software. Si solo desea ejecutar una aplicación Java, descargue solo el JRE.

Por cierto, Java EE (Enterprise Edition) contiene bibliotecas de paquetes de clases "con métodos (funciones)" para crear aplicaciones para el entorno WEB y Java ME (Micro Edition) para dispositivos móviles. Si estás interesado en él (Java ME), recomendaría echar un vistazo al Android DevKit y la API de Google.

Echa un vistazo aquí: que va a explicar poco más .. http://www.oracle.com/technetwork/java/archive-139210.html

1

El JDK viene con una colección de herramientas que se utilizan para desarrollar y ejecutar programas Java,

Ellos incluyen:

  1. appletviewer (para ver los applets de Java)

  2. javac (compilador Java)

  3. Java (Java intérprete)

  4. javap (Java desensamblador)

  5. javah (para archivos de cabecera C)

  6. javadoc (para la creación de documentos HTML)

  7. jdb (depurador de Java)

Considerando que, el SDK viene con muchas otras herramientas que también incluyen las herramientas disponibles en los JDK.

http://parvindersingh.webs.com/apps/forums/topics/show/8853125-solved-java-difference-between-jdk-and-sdk-

+0

Ese enlace está muerto o incorrecto. – Mat

0

creo JDK tiene ciertas características que pueden ser utilizados junto con especial marco. Bueno, llámalo SDK como un todo.

Al igual que Android o Blackberry ambos usan Java junto con su marco.

0

No hay diferencia.

El Java Software Development Kit (Java SDK) solía llamarse el Java Development Kit (JDK) antes de que el departamento de marketing de Sun se volviera loco con el "tm" y la terminología. Por motivos políticos & por cordura, llaman a los nombres significativos (jdk) & versiones (1.2/1.3/1.4 1.5/1.6) términos de "ingeniería". Los términos de marketing son "plataforma Java2" (también conocida como jdk 1.2 a 1.4) o Java5 (también conocida como jdk 1.5) o Java6 (también conocida como jdk1.6). Me da un dolor de cabeza solo de pensarlo.

20

Sí, hay una diferencia entre el SDK y el JDK. La mayoría de las personas olvida que Java Platform no solo se usa para desarrollar programas en lenguaje Java.La JVM también admite algunos otros idiomas. Por lo tanto, dejando en claro, el SDK es el paquete genérico de software que admite la creación de software en una variedad de idiomas como Clojure, Groovy, Scala, JRuby y otros. El JDK es el paquete específico para desarrollar software en lenguaje Java, que contiene todas las API estándar de Java para hacerlo. (espero que he explaned bien, ya que en realidad no hablo Inglés)

4

Tomado del SDK de Java EE 6 instalador, lo que muestra SDK 6 contiene además JDK:

What SDK 6 contains, besides JDK

7

JDK es el SDK para Java.

SDK significa 'Software Development Kit', una herramienta de desarrollo que permite escribir el código con más facilidad, eficacia y eficiencia. SDK vienen en varios idiomas. Proporcionan muchas API (interfaces de programación de aplicaciones) que facilitan el trabajo del programador.

enter image description here

El SDK para Java se llama como JDK, el Kit de Desarrollo de Java. Así que al decir SDK para Java en realidad se está refiriendo al JDK.

Suponiendo que es nuevo en Java, hay otro término que encontrará: JRE, el acrónimo de Java Runtime Environment. JRE es algo que necesita cuando intenta ejecutar programas de software escritos en Java.

Java es un lenguaje independiente de la plataforma. JRE ejecuta JVM, la Máquina Virtual de Java, que le permite ejecutar el software en cualquier plataforma para la que esté disponible la JVM.

+1

Por favor, aclara dónde encaja JRE en tu diagrama? – vikramvi