Quelle est la différence entre les cinq versions de Java sur cette page pour Ubuntu?

Je souhaite installer Java sur mon ordinateur pour pouvoir développer des programmes. Je suis tombé sur cette page sur Java dans la documentation de la communauté Ubuntu . Ça dit:

Java est une technologie d’Oracle (anciennement: Sun Microsystems). Il y a plusieurs implémentations, dont cinq seront discutées ici:

  • OpenJDK : L’objective principal du projet OpenJDK est de produire une implémentation open source de la plate-forme Java SE (6 et 7). C’est la version par défaut de Java utilisée par Ubuntu et la plus facile à installer.
  • Oracle (Sun) Java 6 : Oracle (Sun) Java 6 est l’implémentation de référence pour Java 6.
  • Oracle Java 7 : Oracle Java 7 est l’implémentation de référence pour Java 7.
  • IBM Java : IBM Java est la solution Java préférée sur les machines PowerPC. C’est une réimplémentation avec un compilateur Just-In-Time. Il n’est disponible que sur le site Web d’IBM.
  • Compilateur GNU : Un compilateur Java créé par GNU. Seuls les développeurs devraient avoir à installer ceci.

Je lis le contenu mais je suis toujours un peu confus. Sont-ils tous des versions différentes de JDK? Si non, alors quoi?

Et lequel préféreriez-vous?

Sont-ils tous des versions différentes de JDK? Si non, alors quoi?

Ce sont différentes implémentations de Java / kits de développement pour Java (JDK). Java est une plate-forme standard, et tous implémentent cette plate-forme à leur manière. Parmi ceux-ci:

  • OpenJDK et GNU Comstackr sont les seuls à être open source. Je les préfère généralement – la facilité d’installation ( apt-get ou Software Center) est un facteur important.
    • OpenJDK, en particulier, est principalement dérivé du code source Java “officiel” créé par Oracle / Sun en source ouverte; il est soutenu par Oracle.
  • Oracle Java 6 et 7 sont “le” Java, si vous voulez, de la société qui a inventé Java (c’était Sun, mais Oracle les a achetés il y a longtemps). C’est pourquoi on les appelle des implémentations de référence. Vous voudrez peut-être les utiliser si vous utilisez également Oracle JDK sur une autre plate-forme ou si OpenJDK vous pose des problèmes.
    • Les 6 et 7 font référence à des versions du langage / de la plateforme. 7 est plus récent et a plus de fonctionnalités, mais a été testé moins; 6 est extrêmement mature et stable. Je préférerais 6 si vous êtes débutant.
  • Contrairement au wiki, IBM fabrique des JDK / JRE pour toutes les plates-formes, bien que celle-ci puisse être la seule pour le PowerPC.

Si vous débutez dans la programmation, presque n’importe lequel d’entre eux conviendra bien. Optez pour OpenJDK simplement parce que c’est facile à installer.

La seule expérience dont je dispose pour les différencier est la compilation dans un environnement à faibles ressources (128-192 Mo de RAM – un VPS); J’ai trouvé Oracle Java 6 JDK qui fonctionnait le mieux pour un programme (c’est-à-dire réussi) et IBM Java 6 JDK pour un autre …

Java Language and Runtime Environment est une spécification. Tous ces packages sont des implémentations différentes de la même spécification.

Et lisez plus ici: https://stackoverflow.com/questions/1977238/why-should-i-use-the-oracle-jdk-over-the-openjdk-or-vice-versa

Habituellement, vous devriez juste utiliser openJDK car cela fonctionne aussi bien que Oracles JDK mais est open source, vous n’avez donc aucun problème avec les licences. Plus d’infos sur http://openjdk.java.net/

Il explique ce que chacun est sur la page, mais ce sont essentiellement tous le java d’Orcale développé par différents groupes.

  • OpenJDK est le développement open source de l’édition Java d’Oracles.
  • Java 6 et 7 ne sont que des versions de l’édition standard d’Oracles Java. & est le plus récent et publié l’année dernière en juin ou juillet, je pense.
  • La version IBM était principalement utilisée pour les PowerPC car ses états n’auraient probablement pas beaucoup d’importance pour vous, sauf si vous avez un processeur PowerPC.
  • Le compilateur GNU est destiné aux développeurs qui codent en Java. C’est juste un compilateur pour Java. Si vous ne savez pas ce qu’est celui-ci, vous n’en aurez probablement pas besoin à moins que vous ne souhaitiez vous renseigner sur le développement Java.

J’utilise OpenJDK car cela fonctionne mieux avec Minecraft. Aucune autre raison ha.

Facture

Pour autant que je sache, openJDK est presque identique au JDK de Sun, la principale différence est qu’il est open source. Vous ne pouvez pas utiliser un JDK IBM si vous êtes un utilisateur de PC, car il est restreint sous PowerPC. bon choix pour moi car il semble encore immature.

Cela suscitera probablement la colère de nombreux autres utilisateurs du logiciel libre, mais voici ma réponse brève.

Oracle a acquis Sun, Oracle (Sun) Java 6 n’est que l’ancienne version d’Oracle Java 7. Cela dit. Sauf si vous avez une très bonne raison de ne pas utiliser la version d’Oracle. Tout le rest est une tentative de réplication qu’Oracle a faite et aucune d’entre elles n’est aussi bonne.

En ce qui concerne la qualité. GNU Java est la pire tentative de la machine virtuelle que j’ai jamais vue .. sauf si vous appréciez les plantages fréquents .. ne l’utilisez pas. IBM Java – jamais utilisé honnêtement, donc pas d’opinion OpenJDK – si vous allez utiliser une implémentation open source de la machine virtuelle Java, j’utiliserais OpenJDK et la version 7.x.

FWIW, j’ai eu moins de problèmes avec Oracle / Sun Java que toute autre version. OpenJDK fonctionne la plupart du temps. Je n’ai jamais fait fonctionner GNU Java. IBM Java semble bien, mais je n’ai pas beaucoup d’expérience.

WebUpd8te a un PPA qui facilite l’installation via apt-get. À moins que vous n’ayez une raison d’utiliser une version différente, telle qu’une licence, j’utiliserais Oracle Java.