Различия между JDK и Java SDK

есть ли существенная разница между этими двумя терминами?. Я понимаю, что JDK означает Java Development Kit, который является подмножеством SDK (Software Development Kit). Но указание Java SDK должно означать то же самое, что и JDK.

15 ответов


отсюда Википедии:

JDK является подмножеством того, что свободно определяется как набор для разработки программного обеспечения (SDK) в общем смысле. В описаниях, которые сопровождают их последние выпуски для Java SE, EE и ME, Sun признают, что в соответствии с их терминологией JDK формирует подмножество SDK, которое отвечает за написание и запуск программ Java. Остальная часть SDK состоит из дополнительного программного обеспечения, такого как приложение Серверы, Отладчики и документация.

"дополнительное программное обеспечение", похоже, Glassfish, MySQL и NetBeans. на этой странице дает сравнение различных пакетов, которые вы можете получить для Java EE SDK.


Да, есть разница между SDK и JDK. Большинство людей забывают, что платформа Java используется не только для разработки программ на языке Java. JVM также поддерживает некоторые другие языки. Таким образом, чтобы было ясно, SDK-это общий пакет программного обеспечения, который поддерживает создание программного обеспечения на различных языках, таких как Clojure, Groovy, Scala, JRuby и другие. JDK-это конкретный пакет для разработки программного обеспечения на языке Java, содержащий весь JAVA standard API для этого. (Я надеюсь Я объяснил это хорошо, так как я на самом деле не говорю по-английски)


JDK-это SDK для Java.

SDK означает "набор для разработки программного обеспечения", инструменты разработчиков, которые позволяют писать код с большей легкостью, эффективностью и эффективностью. SDKs приходят для различных языков. Они предоставляют множество API (интерфейсов прикладного программирования), что упрощает работу программиста.

enter image description here

SDK для Java называется JDK, Java Development Kit. Итак, говоря SDK для Java, вы фактически ссылаясь на JDK.

предполагая, что вы новичок в Java, есть еще один термин, с которым вы столкнетесь - JRE, аббревиатура для среды выполнения Java. JRE-это то, что вам нужно, когда вы пытаетесь запустить программы, написанные на Java.

Java является независимым от платформы языком. JRE запускает JVM, виртуальную машину Java, которая позволяет запускать программное обеспечение на любой платформе, для которой доступна JVM.


взято из установщика Java EE 6 SDK, показывает, что SDK 6 содержит помимо JDK:

What SDK 6 contains, besides JDK


JDK (Java Development Kit) является SDK (Software Dev Kit).

Он используется для создания программного обеспечения/приложений на Java и, конечно же, он включает JRE (Java Runtime Edition) для выполнения этого программного обеспечения. Если вы просто хотите выполнить Java-приложение, загрузите только JRE.

кстати, Java EE (Enterprise Edition) содержит библиотеки пакетов классов "с методами (функциями)" для создания приложений для веб-среды и Java ME (Micro Edition) для мобильных устройств устройства. Если вас это интересует (Java ME), я бы рекомендовал взглянуть на Android DevKit и API Google.

Взгляните сюда: это объяснит немного больше.. http://www.oracle.com/technetwork/java/archive-139210.html


Sun просто любит менять названия вещей без видимой причины. Посмотрите на три различные схемы нумерации для SunOS / Solaris или две схемы нумерации для Java. Является ли Java 1.6, Java 2 версии 6 или Java 6?


Итак, почему существуют эти две разные ссылки ( SDK и JDK), чтобы загрузить их?


нет никакой разницы между JDK и Java SDK. Оба они означают одно и то же. Я думаю, что это было PR-решение на Sun, чтобы перейти от JDK к Java SDK. Я думаю, что сейчас он вернулся к JDK.


с моей точки зрения, нет никакой разницы между JDK и SDK в java. Мы можем найти все инструменты разработки, а также средства в обоих из них. это просто псевдоним, предоставленный sun.


лучший пример для этого вопроса, SDK-Software Development Kit-Ex: Netbeans JDK-Java Development Kit.(Это компилятор Java). Без JDK мы не можем запускать java-программы в SDK.


JDK поставляется с набором инструментов, которые используются для разработки и запуска программ Java,

среди них:

  1. appletviewer (для просмотра Java-апплетов)

  2. javac (компилятор Java)

  3. java (интерпретатор Java)

  4. javap (Java disassembler)

  5. javah (для заголовка C файлы)

  6. javadoc (для создания HTML-документов)

  7. jdb (отладчик Java)

в то время как SDK поставляется со многими другими инструментами, включая инструменты, доступные в JDKs.

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


нет никакой разницы.

Java Software Development Kit (Java SDK) раньше назывался Java Development Kit (JDK), прежде чем отдел маркетинга в Sun сошел с ума от "tm" и терминологии. По политическим причинам и для здравомыслия они называют значимые имена ( jdk) и версии (1.2 / 1.3 / 1.4 1.5 / 1.6) "инженерные" термины. Маркетинговые термины - "платформа Java2" (ака jdk 1.2 через 1.4) или Java5 (ака jdk 1.5) или Java6 (ака jdk1.6). У меня начинает болеть голова. думать об этом.


Я думаю, что jdk имеет определенные функции, которые могут быть использованы вместе с конкретной структурой. Назовем это SDK в целом.

Как Android или Blackberry оба используют java вместе со своей структурой.


мое первоначальное предположение было бы, что Java SDK предназначен для создания JVM, а JDK - для создания приложений на JVM.

Edit: хотя на данный момент это кажется неправильным. Sun находятся в процессе opensourcing JVM (возможно, они даже закончили), поэтому я не слишком удивлюсь, если мой ответ станет правильным... Но на данный момент SDK и JDK-это одно и то же.


есть два продукта JavaSE и JavaEE. EE-это веб-приложение/enterprise edition, которое позволяет разрабатывать и запускать веб-приложение. SE-это простой Java-продукт, который не имеет специфики EE, но является подмножеством EE. SE поставляется в двух типах JDK и JRE.

есть одна большая разница, которая может быть не очевидной, и я не уверен, что это относится ко всем операционным системам, но под Windows JRE не имеет серверной точки доступа JVM, только клиентский, JDK имеет оба, и, насколько я знаю, все другие ОС имеют как для JDK, так и для JRE. Реальная разница заключается в том, что JDK содержит компилятор Java, то есть JDK позволяет компилировать и запускать Java из исходного кода, где, поскольку JRE разрешает только запуск байтового кода Java, это источник, который уже был скомпилирован. И да, новые версии связывают ряд дополнительных компонентов, таких как среда редактора NetBeans и Java в базе данных памяти (derby/cloudscape), но это необязательный.