Qual è la differenza tra le cinque versioni di Java in questa pagina per Ubuntu?


9

Voglio installare Java sul mio computer in modo da poter sviluppare programmi e mi sono imbattuto in questa pagina su Java nella documentazione della comunità Ubuntu . Dice:

Java è una tecnologia di Oracle (precedentemente: Sun Microsystems). Esistono diverse implementazioni, di cui cinque saranno discusse qui:

  • OpenJDK : l'obiettivo principale del progetto OpenJDK è quello di produrre un'implementazione open source della piattaforma Java SE (6 e 7). Questa è la versione predefinita di Java utilizzata da Ubuntu ed è la più semplice da installare.
  • Oracle (Sun) Java 6 : Oracle (Sun) Java 6 è l'implementazione di riferimento per Java 6.
  • Oracle Java 7 : Oracle Java 7 è l'implementazione di riferimento per Java 7.
  • IBM Java : IBM Java è la soluzione Java preferita su macchine PowerPC. È una reimplementazione con un compilatore just-in-time. È disponibile solo dal sito Web IBM.
  • Compilatore GNU : un compilatore Java creato da GNU. Solo gli sviluppatori dovrebbero installare questo.

Ho letto il contenuto ma sono ancora un po 'confuso. Sono tutte versioni diverse di JDK? Se no, allora cosa?

E quale preferiresti?

Risposte:


6

Sono tutte versioni diverse di JDK? Se no, allora cosa?

Sono diverse implementazioni di Java / kit di sviluppo per Java (JDK). Java è una piattaforma standard e tutte implementano tale piattaforma a modo loro. Di questi:

  • OpenJDK e GNU Compiler sono gli unici ad essere open source. Di solito li preferisco: la facilità di installazione ( apt-geto Software Center) è un grande fattore.
    • OpenJDK in particolare deriva principalmente dal codice sorgente Java "ufficiale" che Oracle / Sun ha aperto; è supportato da Oracle.
  • Oracle Java 6 e 7 sono "i" Java, se vuoi, dalla società che ha inventato Java (che era Sun, ma Oracle li ha acquistati qualche tempo fa). Ecco perché sono chiamati implementazioni di riferimento. Puoi usarli se stai utilizzando Oracle JDK anche su un'altra piattaforma o se OpenJDK ti sta dando problemi.
    • 6 e 7 si riferiscono alle versioni della lingua / della piattaforma. 7 è più recente e ha più funzionalità, ma è stato testato di meno; 6 è estremamente maturo e stabile. Preferirei 6 se hai appena iniziato.
  • Contrariamente alla wiki, IBM produce JDK / JRE per tutte le piattaforme, sebbene la loro potrebbe essere l'unica per PowerPC.

Se stai iniziando con la programmazione, quasi tutti questi andranno bene. Scegli OpenJDK solo perché è facile da installare.

L'unica esperienza che ho nel differenziarli è la compilazione in un ambiente a bassa risorsa (128-192 MB di RAM - un VPS); Ho scoperto che Oracle Java 6 JDK ha funzionato meglio per un programma (ovvero riuscito) e IBM Java 6 JDK per un altro ...


1
Solo una rapida correzione - Per Java 7, l'implementazione di riferimento è OpenJDK, non Oracle JDK. E sì, IBM ha implementazioni per tutte le principali piattaforme tranne Oracle (sun) Solraris.
intelekt


1

Spiega cosa c'è nella pagina, ma essenzialmente sono tutti i java di Orcale sviluppati da diversi gruppi.

  • OpenJDK è lo sviluppo open source dell'edizione Oracles Java.
  • Java 6 e 7 sono solo versioni di Oracles Java standard edition. ed è il più aggiornato e pubblicato lo scorso anno a giugno o luglio, credo.
  • La versione IBM è stata utilizzata principalmente per PowerPC poiché i suoi stati probabilmente non contano molto per te a meno che tu non abbia un processore PowerPC.
  • Il compilatore GNU è per gli sviluppatori che stanno codificando in Java. È solo un compilatore per Java. Se non sai cos'è questo, probabilmente non ne hai bisogno a meno che tu non voglia conoscere lo sviluppo di Java.

Uso OpenJDK perché funziona meglio con Minecraft. Nessun altro motivo ha.

Conto


1

Per quanto ne so, openJDK è quasi lo stesso di Sun JDK, la differenza principale è che è open source. Non puoi utilizzare un IBM JDK se sei un utente di PC poiché è limitato su PowerPC. Gcj non è considerato un buona scelta per me poiché sembra ancora immaturo.


0

Questo probabilmente farà arrabbiare molte delle persone più FLOSS, ma ecco la mia breve risposta.

Oracle ha acquisito Sun, Oracle (Sun) Java 6 è solo la versione precedente di Oracle Java 7. Detto questo, a meno che tu non abbia una buona ragione per non usare la versione di Oracle. Tutto il resto è un tentativo di replicare che Oracle ha fatto e nessuno di loro è buono.

Per quanto riguarda la qualità. GNU Java è il peggior tentativo della JVM che abbia mai visto ... a meno che non ti piacciano i crash frequenti .. non usarlo. IBM Java - non l'ho mai usato onestamente, quindi nessuna opinione OpenJDK - se hai intenzione di utilizzare un'implementazione open source della JVM, userei OpenJDK e utilizzerei la versione 7.x.


0

FWIW, ho avuto meno problemi con Oracle / Sun Java rispetto a qualsiasi altra versione. OpenJDK funziona il più delle volte. Non ho mai fatto funzionare GNU Java. IBM Java sembra buono, ma non ho molta esperienza con esso.

WebUpd8te ha un PPA che semplifica l'installazione tramite apt-get. A meno che tu non abbia un motivo per usare una versione diversa, come le licenze, andrei con Oracle Java.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.