2010-03-29 12 views
28

Jaka jest różnica między środowiskiem JRE zawartym w pakiecie JDK (znajdującym się w folderze jre) a wolnostojącym środowiskiem JRE? Czy jest jakiś?JRE dołączone do JDK kontra samodzielny JRE

+0

Do którego samodzielnego środowiska JRE się odwołujesz? –

+2

Można zainstalować pakiet JDK (dostarczany z JRE, znajdujący się w podfolderze lokalizacji instalacji JDK) lub można zainstalować tylko środowisko JRE (tj. Jako oddzielny plik do pobrania i instalacji). – Dave

Odpowiedz

25

W „standalone JRE” (czasami określane również jako "JRE publiczne") zazwyczaj nie zawiera wersji HotSpot na serwerze. Brakuje również narzędzi dołączonych do JDK (JavaDB, javac, tools.jar, itp.).

W przeciwnym razie czasy pracy są identyczne. Należy również pamiętać, że JDK może zainstalować jeden (lub więcej) JRE.

Wreszcie wszystkie powyższe uwagi dotyczą instalatorów Java dla systemu Windows. Inni dostawcy i platformy mogą (i czasami robią) się różnić.

+3

IIRC jest więcej informacji na temat debugowania w JDK wersji JRE. Sprawdź rozmiar pliku 'rt.jar'. Brakuje również rzeczy takich jak autoupdate. –

+2

Zobacz, zastanawiałem się, czy nie było debugowania rzeczy w JRE JDK, ale ludzie myśleli, że jestem szalony, aby o tym wspomnieć. – Dave

+0

Rzeczywiście, mój jdk (7u6) właśnie zainstalował DWÓR JRE! Jeden samodzielny (java/jre) i jeden wewnątrz folderu jdk (java/jdk ../ jre). To trochę uciążliwe dla informacji Oracle (lub kogokolwiek tutaj), które mają na myśli "jdk included jre", ale prawdopodobnie jest to ostatnia. –

16

Nie ma różnicy (chyba że masz inną wersję JRE). Oto oficjalna definicja od SUN/Oracle:

http://java.sun.com/javase/6/docs/technotes/guides/index.html

JRE i JDK Sun Microsystems zapewnia dwóch głównych produktów oprogramowania w JavaTM Platform, Standard Edition (JavaTM SE) rodzina:

Środowisko wykonawcze Java SE (JRE)

Środowisko JRE zapewnia biblioteki, maszynę wirtualną Java i inne komponenty niezbędne do uruchamiania apletów i aplikacji napisanych w języku programowania Java . Środowisko wykonawcze można ponownie rozpowszechniać za pomocą aplikacji , aby umożliwić ich niezależną pracę.

Kit Java SE Development (JDK)

JDK zawiera JRE plusa narzędzia programistyczne wiersza polecenia, takie jak kompilatory i debugery, które są niezbędne lub przydatne rozwoju apletów i aplikacji.

+1

@Kevin, 'bn' wskazuje na fakt, że istnieje 'NO' różnica między 'JONEM samodzielnym' a 'JRE zawarty z JDK' (co jest pierwotnym pytaniem) –

+1

Kolejne szybkie pytanie brzmi: redystrybuujesz JDK, czy możesz dostarczyć tylko środowisko JRE? – Dave

0

"JDK" to zestaw programistyczny Java. JDK to pakiet oprogramowania, którego można użyć do tworzenia oprogramowania opartego na języku Java. "JRE" to Java Runtime Environment. JRE jest implementacją wirtualnej maszyny języka Java, która faktycznie wykonuje programy w języku Java.

Zazwyczaj każdy JDK zawiera jeden (lub więcej) JRE wraz z jego różnych narzędzi programistycznych, takich jak kompilatory źródłowych Java, łączenie i narzędzia wdrażania, debugery, biblioteki rozwoju itp

1

Po uruchomieniu porównania binarnego z samodzielnym środowiskiem JRE i środowiskiem JRE zawartym w pakiecie JDK są one binarnie różne (przynajmniej w wersji dla systemu Windows).

Liczba klas w rt.jar jest równa, ale z ciekawości, uruchomiłem "javap" na wszystkich klasach w obu i porównywanych wynikach.

Jedyna różnica widzę jest to, że Verison JDK posiada linie takie jak „Zestawione z„Serializable.java”przed kodem klasy.

nie sądzę, powinno to mieć żadnego wpływu na użytkownika końcowego, więc te JRE powinny zachowywać się w ten sam sposób.

1

Różnica jest legalna. JDK jest na rozwój, JRE jest do wykonania. Możesz dołączyć środowisko JRE do produktu

Powiązane problemy