De manière surprenante (OpenJDK 7 étant disponible depuis environ 4 mois), Ubuntu 11.10 utilise toujours OpenJDK 6 au lieu de 7 par défaut. Comment puis-je résoudre ce problème? Je préférerais supprimer complètement OpenJDK 6 et laisser OpenJDK 7 être default-jdk et default-jre.
Je ne veux pas les archives officielles d'Oracle, je veux des deb repos - la manière standard d'Ubuntu.
Le problème est que le paquet default-jre
dépend de OpenJDK 6 et que les dépendances de la plupart des autres packages sont définies comme étant default-jre | openjdk-6-jre | Sun-Java6-jre
- jusqu'à ce que OpenJDK 7 soit officiellement pris en charge et soit utilisé comme version par défaut Il faudra garder OpenJDK 6 et définir OpenJDK 7 par défaut avec update-Java-alternatives
. Exemple pour un système 64 bits:
$ update-Java-alternatives -l
Java-1.6.0-openjdk 1061 /usr/lib/jvm/Java-1.6.0-openjdk
Java-1.7.0-openjdk-AMD64 1051 /usr/lib/jvm/Java-1.7.0-openjdk-AMD64
$ Sudo update-Java-alternatives -s Java-1.7.0-openjdk-AMD64
Sur les systèmes 32 bits, le nom du répertoire sera différent, vous pouvez trouver le bon nom à l'aide du commutateur -l
. La deuxième commande peut générer beaucoup d’erreurs; utilisez le commutateur --jre
ou ignorez simplement les erreurs - le script change ce qu'il peut et ignore simplement le reste.
On pourrait théoriquement éditer le paquet default-jre
pour qu'il repose sur OpenJDK 7, mais sachez que cela peut causer plus de tort que de mal.
Pour cela, vous devez avoir les deux versions de jdk installées sur votre système. vous pouvez utiliser apt-get pour télécharger les deux.
Après cela, essayez
$ Sudo update-alternatives --config Java
et sélectionnez le jdk que vous souhaitez utiliser.
Openjdk est parfois défavorable pour certaines applications.
Vous devriez également essayer pour Oracle-Java ou Sun-Java.
Le lien ci-dessous est très utile à cet effet:
http://www.webupd8.org/2012/01/install-Oracle-Java-jdk-7-in-ubuntu-via.html
OpenJDK 7 est dans les pensions ubuntu normales dans 11.10. Si vous recherchez openjdk-7-jre et openjdk-7-jdk et que vous les installez à l'aide d'apt-get/synaptic/software center, ils doivent remplacer openjdk-6, s'ils ne le font pas. vous pouvez d'abord supprimer les packages openjdk-6- * en utilisant apt-get purge openjdk-6-*
Le repo peut être trouvé ici: https://launchpad.net/~openjdk/+archive/ppa
ou:
Sudo apt-add-repository ppa:openjdk/ppa
Sudo apt-get update
Sudo apt-get upgrade
en supposant que vous avez installé OpenJDK