Jaka jest różnica między pięcioma wersjami Java na tej stronie dla Ubuntu?

9

Chcę zainstalować Javę na moim komputerze, aby móc tworzyć programy, i natknąłem się na tę stronę w Javie w dokumentacji społeczności Ubuntu . To mówi:

Java to technologia firmy Oracle (poprzednio: Sun Microsystems). Istnieje kilka wdrożeń, z których pięć zostanie omówionych tutaj:

  • OpenJDK : Podstawowym celem projektu OpenJDK jest stworzenie implementacji Open Source platformy Java SE (6 i 7). Jest to domyślna wersja Java, której używa Ubuntu i jest najłatwiejsza do zainstalowania.
  • Oracle (Sun) Java 6 : Oracle (Sun) Java 6 to referencyjna implementacja Java 6.
  • Oracle Java 7 : Oracle Java 7 to referencyjna implementacja Java 7.
  • IBM Java : IBM Java jest preferowanym rozwiązaniem Java na komputerach PowerPC. Jest to reimplementacja za pomocą kompilatora Just-In-Time. Jest dostępny tylko na stronie internetowej IBM.
  • Kompilator GNU : kompilator Java stworzony przez GNU. Tylko programiści powinni to zainstalować.

Przeczytałem zawartość, ale nadal jestem trochę zdezorientowany. Czy wszystkie są różnymi wersjami JDK? Jeśli nie, to co?

A który wolisz?

Programowanie Noob
źródło

Odpowiedzi:

6

Czy wszystkie są różnymi wersjami JDK? Jeśli nie, to co?

Są to różne implementacje Java / zestawów programistycznych dla Javy (JDK). Java jest standardową platformą i wszystkie one implementują tę platformę na swój własny sposób. Tych:

  • OpenJDK i Kompilator GNU są jedynymi, które są open source. Zwykle wolę je - łatwość instalacji ( apt-getlub Software Center) jest dużym czynnikiem.
    • W szczególności OpenJDK pochodzi głównie z „oficjalnego” kodu źródłowego Java, który jest pozyskiwany przez Oracle / Sun; jest wspierany przez Oracle.
  • Oracle Java 6 i 7 to „Java” Java, jeśli chcesz, od firmy, która wynalazła Javę (to była Sun, ale Oracle kupiła je jakiś czas temu). Dlatego nazywane są implementacjami referencyjnymi. Możesz z nich skorzystać, jeśli używasz Oracle JDK również na innej platformie lub jeśli OpenJDK sprawia ci problemy.
    • 6 i 7 odnoszą się do wersji języka / platformy. 7 jest nowszy i ma więcej funkcji, ale został przetestowany mniej; 6 jest wyjątkowo dojrzały i stabilny. Wolę 6, jeśli dopiero zaczynasz.
  • W przeciwieństwie do wiki, IBM tworzy JDK / JRE dla wszystkich platform, chociaż mogą one być jedyne dla PowerPC.

Jeśli zaczynasz programować, prawie każdy z nich będzie dobrze pasował. Wybierz OpenJDK tylko dlatego, że jest łatwy w instalacji.

Jedyne doświadczenie w ich rozróżnianiu to kompilowanie w środowisku o niskim zużyciu zasobów (128–192 MB pamięci RAM - VPS); Odkryłem, że Oracle Java 6 JDK działa najlepiej dla jednego programu (tzn. Udało się), a IBM Java 6 JDK dla innego ...

ish
źródło
1
Szybka korekta - w przypadku Java 7 implementacją referencyjną jest OpenJDK, a nie JDK Oracle. I tak, IBM ma implementacje dla wszystkich głównych platform z wyjątkiem Solraris firmy Oracle.
intelekt
2

Język Java i środowisko wykonawcze to specyfikacja. Wszystkie te pakiety są różnymi implementacjami tej samej specyfikacji.

I czytaj więcej tutaj: /programming/1977238/why-should-i-use-the-oracle-jdk-over-the-openjdk-or-vice-versa

Zwykle powinieneś używać openJDK, ponieważ działa tak samo dobrze, jak JDK z Oracles, ale jest open source, więc nie masz żadnych problemów z licencjami. Więcej informacji na http://openjdk.java.net/

Janning
źródło
1

Wyjaśnia, co każdy z nich jest na stronie, ale w gruncie rzeczy wszystkie są javami Orcale opracowanymi właśnie przez różne grupy.

  • OpenJDK to open source'owe wydanie edycji Java firmy Oracles.
  • Java 6 i 7 to tylko wersje standardowej edycji Java firmy Oracles. i jest najbardziej aktualna i wydaje się wydana w zeszłym roku w czerwcu lub lipcu.
  • Wersja IBM była używana głównie dla PowerPC, ponieważ jej stany prawdopodobnie nie będą miały dla ciebie większego znaczenia, chyba że masz procesor PowerPC.
  • Kompilator GNU jest przeznaczony dla programistów, którzy kodują w Javie. To tylko kompilator dla Java. Jeśli nie wiesz, co to jest, prawdopodobnie nie potrzebujesz go, chyba że chcesz dowiedzieć się o programowaniu w Javie.

Używam OpenJDK, ponieważ działa lepiej z Minecraft. Nie ma innego powodu ha.

Rachunek

LinuxBill
źródło
1

O ile wiem, openJDK jest prawie taki sam jak Sun JDK, główna różnica polega na tym, że jest open source. Nie możesz używać IBM JDK, jeśli jesteś użytkownikiem komputera, ponieważ jest on ograniczony do PowerPC. Gcj nie jest uważany za dobry wybór dla mnie, ponieważ wydaje się wciąż niedojrzały.

Hongxu Chen
źródło
0

To prawdopodobnie rozwścieczy wielu więcej FLOSS, ale oto moja krótka odpowiedź.

Oracle nabył Sun, Oracle (Sun) Java 6 to tylko starsza wersja Oracle Java 7. To powiedziawszy… Chyba że masz naprawdę dobry powód, aby nie używać wersji Oracle. Cała reszta to próba powtórzenia tego, co zrobiła Oracle i żadne z nich nie jest tak dobre.

Jeśli chodzi o jakość. GNU Java jest najgorszą próbą JVM, jaką kiedykolwiek widziałem ... chyba że lubisz częste awarie ... nie używaj go. IBM Java - nigdy nie używał go uczciwie, więc nie ma opinii OpenJDK - jeśli zamierzasz użyć implementacji JVM typu open source, użyłbym OpenJDK i wersji 7.x.

csgeek
źródło
0

FWIW, miałem mniej problemów z Oracle / Sun Java niż w jakiejkolwiek innej wersji. OpenJDK działa przez większość czasu. Nigdy nie miałem GNU Java do pracy. IBM Java wydaje się dobry, ale nie mam z nim dużego doświadczenia.

WebUpd8te ma pakiet PPA, który ułatwia instalację za pomocą apt-get. Jeśli nie masz powodu, aby używać innej wersji, takiej jak licencjonowanie, wybrałbym Oracle Java.

JimBeam823
źródło