Czy jest jakaś istotna różnica między tymi dwoma terminami? Rozumiem, że JDK oznacza Java Development Kit, który jest podzbiorem SDK (Software Development Kit). Ale określenie Java SDK powinno oznaczać to samo, co JDK.
85
Z tego wpisu w Wikipedii :
JDK jest podzbiorem tego, co jest luźno zdefiniowane jako zestaw do tworzenia oprogramowania (SDK) w sensie ogólnym. W opisach dołączonych do ich ostatnich wydań dla Java SE, EE i ME firma Sun przyznaje, że zgodnie z ich terminologią JDK stanowi podzbiór SDK, który jest odpowiedzialny za pisanie i uruchamianie programów w języku Java. Pozostała część SDK składa się z dodatkowego oprogramowania, takiego jak serwery aplikacji, debugery i dokumentacja.
„Dodatkowym oprogramowaniem” wydaje się być Glassfish, MySQL i NetBeans. Ta strona zawiera porównanie różnych pakietów, które można pobrać z zestawu Java EE SDK.
Tak, istnieje różnica między SDK a JDK. Większość ludzi zapomina, że platforma Java służy nie tylko do tworzenia programów w języku Java. JVM obsługuje również inne języki. Tak więc, wyjaśniając, SDK to ogólny pakiet oprogramowania, który obsługuje tworzenie oprogramowania w różnych językach, takich jak Clojure, Groovy, Scala, JRuby i inne. JDK to specyficzny pakiet do tworzenia oprogramowania w języku Java, zawierający wszystkie standardowe API języka Java. (Mam nadzieję, że dobrze to wyjaśniłem, ponieważ tak naprawdę nie mówię po angielsku)
źródło
JDK to zestaw SDK dla języka Java.
SDK to skrót od „Software Development Kit”, narzędzia programistycznego, które umożliwia pisanie kodu z większą łatwością, skutecznością i wydajnością. Pakiety SDK są dostępne w różnych językach. Zapewniają wiele interfejsów API (interfejsów programowania aplikacji), które ułatwiają pracę programisty.
Pakiet SDK dla języka Java nosi nazwę JDK, czyli zestaw Java Development Kit. Więc mówiąc SDK for Java, tak naprawdę masz na myśli JDK.
Zakładając, że dopiero zaczynasz przygodę z Javą, jest jeszcze jeden termin, z którym się spotkasz - JRE, skrót od Java Runtime Environment. JRE to coś, czego potrzebujesz, gdy próbujesz uruchamiać programy napisane w języku Java.
Java jest językiem niezależnym od platformy. Środowisko JRE obsługuje maszynę JVM, wirtualną maszynę Java, która umożliwia uruchamianie oprogramowania na dowolnej platformie, dla której dostępna jest maszyna JVM.
źródło
Zaczerpnięty z instalatora Java EE 6 SDK, pokazuje, co zawiera pakiet SDK 6 oprócz JDK:
źródło
Sun po prostu lubi zmieniać nazwy rzeczy bez wyraźnego powodu. Spójrz na trzy różne schematy numeracji dla SunOS / Solaris lub dwa schematy numeracji dla Javy. Czy to Java 1.6, Java 2 w wersji 6 czy Java 6?
źródło
JDK (Java Development Kit) to SDK (Software Dev Kit).
Służy do tworzenia oprogramowania / aplikacji w Javie i oczywiście obejmuje JRE (Java Runtime Edition) do wykonywania tego oprogramowania. Jeśli chcesz tylko uruchomić aplikację Java, pobierz tylko środowisko JRE.
Nawiasem mówiąc, Java EE (Enterprise Edition) zawiera biblioteki pakietów klas „z metodami (funkcjami)” do budowania aplikacji na środowisko WEB oraz Java ME (Micro Edition) na urządzenia mobilne. Jeśli jesteś zainteresowany tym (Java ME), polecam przyjrzeć się Google Android DevKit i API.
Spójrz tutaj: wyjaśni nieco więcej .. http://www.oracle.com/technetwork/java/archive-139210.html
źródło
JDK zawiera zbiór narzędzi używanych do tworzenia i uruchamiania programów w języku Java ,
Zawierają:
appletviewer (do przeglądania apletów Java)
javac (kompilator Java)
java (interpreter Java)
javap (dezasembler Java)
javah (dla plików nagłówkowych C)
javadoc (do tworzenia dokumentów HTML)
jdb (debugger Java)
Podczas gdy SDK zawiera wiele innych narzędzi, w tym narzędzia dostępne w JDK.
http://parvindersingh.webs.com/apps/forums/topics/show/8853125-solved-java-difference-between-jdk-and-sdk-
źródło
Nie ma różnicy między JDK i Java SDK. Obaj mają na myśli to samo. Myślę, że przejście z JDK na Java SDK było decyzją PR w firmie Sun. Myślę, że na razie wraca do JDK.
źródło
Z mojego punktu widzenia nie ma różnicy między JDK i SDK w java. W obu możemy znaleźć wszystkie narzędzia programistyczne, a także udogodnienia. to tylko alias dostarczony przez słońce.
źródło
Najlepszy przykład na to pytanie, SDK - Software Development Kit - Ex: Netbeans JDK - Java Development Kit (to jest kompilator Java). Bez JDK nie możemy uruchamiać programów Java w SDK.
źródło
Nie ma różnicy.
Java Software Development Kit (Java SDK) była nazywana Java Development Kit (JDK), zanim dział marketingu firmy Sun oszalał na punkcie „tm” i terminologii. Ze względów politycznych i dla rozsądku nazywają znaczące nazwy (jdk) i wersje (1.2 / 1.3 / 1.4 1.5 / 1.6) terminami „inżynierskimi”. Terminy marketingowe to „platforma Java2” (aka jdk 1.2 do 1.4), Java5 (aka jdk 1.5) lub Java6 (aka jdk1.6). Kiedy o tym myślę, boli mnie głowa.
źródło
Myślę, że jdk ma pewne cechy, które mogą być używane wraz z określonym frameworkiem. Cóż, nazwij to SDK jako całość.
Podobnie jak Android i Blackberry, oba używają javy wraz ze swoją strukturą.
źródło
Domyślam się, że Java SDK służy do budowania JVM, a JDK do tworzenia aplikacji dla JVM.
Edycja: Chociaż w tej chwili wygląda to na niepoprawne. Firma Sun jest w trakcie otwierania JVM (być może nawet skończyli, teraz), więc nie zdziwiłbym się zbytnio, gdyby moja odpowiedź była prawidłowa ... Ale w tej chwili SDK i JDK to to samo.
źródło
Istnieją dwa produkty JavaSE i JavaEE. EE to aplikacja internetowa / edycja korporacyjna, która umożliwia tworzenie i uruchamianie aplikacji internetowych. SE to zwykły produkt Java, który nie ma specyfiki EE, ale jest podzbiorem EE. SE występuje w dwóch typach: JDK i JRE.
Jest jedna duża różnica, która może nie być oczywista i nie jestem pewien, czy dotyczy to wszystkich systemów operacyjnych, ale pod Windows JRE nie ma serwera HotSpot JVM, tylko klient, JDK ma oba i o ile Wiem, że wszystkie inne systemy operacyjne mają zarówno JDK, jak i JRE. Prawdziwą różnicą jest to, że JDK zawiera kompilator Javy, czyli JDK pozwala na kompilację i uruchamianie Javy z kodu źródłowego, podczas gdy JRE pozwala tylko na uruchamianie kodu bajtowego Javy, czyli źródła, które zostało już skompilowane. I tak, nowsze wersje zawierają szereg dodatkowych komponentów, takich jak środowisko edytora NetBeans i baza danych Java w pamięci (derby / cloudscape), ale są one opcjonalne.
źródło