Il ne semble pas que le responsable de openjdk-r / ppa mette à jour le paquet openjdk-7 au-delà de la version 7u95-2.6.4-3. La description de ce paquet "Copié à partir de expérimental debian dans Archive primaire pour Debian GNU / Linux" nous donne cependant un indice sur la façon de gérer cela nous-mêmes.
Téléchargez les packages destinés à votre architecture:
(pour la plupart des utilisateurs, cela signifie amd64 si 64 bits ou i386 si Ubuntu 32 bits est installé)
(Essayer de) installer les paquets en utilisant dpkg
:
Ubuntu 17.10 et versions antérieures:
sudo dpkg -i openjdk-7-* libjpeg62-turbo* libfontconfig1* fontconfig-config*
Ubuntu 18.04 et plus tard:
sudo dpkg -i openjdk-7-* libjpeg62-turbo*
Vérifiez la sortie de dpkg
. S'il y avait des problèmes de dépendance - ce qui est probable -, vous verrez ce qui suit (avec votre architecture remplacée par amd64):
Des erreurs ont été rencontrées lors du traitement:
openjdk-7-jre: amd64
openjdk-7-jre-headless: amd64
openjdk-7-jdk: amd64
S'il n'y a pas eu de problèmes de dépendance, tant mieux, c'est fini, passez à l'étape 4. Sinon, si vous avez besoin de résoudre certains problèmes de dépendance, ceci est traité avec:
sudo apt install -f
Notez qu'il n'est pas nécessaire de réexécuter l'exécution dpkg
après avoir apt
résolu les dépendances. Il va automatiquement terminer l'installation des paquets openjdk.
Mettre à jour les alternatives Java. Vous pouvez voir toutes les versions de Java installées avec update-java-alternatives --list
. Pour activer OpenJDK Java 1.7, exécutez:
sudo update-java-alternatives -s java-1.7.0-openjdk-amd64
Vous remarquerez peut-être une erreur indiquant que le IcedTeaPlugin.so
plug - in est indisponible. Ce n'est pas un problème pour les développeurs qui travaillent avec le JDK.
Vérifiez que Java fonctionne:
java -version
qui devrait produire quelque chose de similaire à:
version java "1.7.0_161"
Environnement d'exécution OpenJDK (IcedTea 2.6.12) (7u161-2.6.12-1)
Ordinateur virtuel serveur OpenJDK 64 bits (version 24.161-b01, mode mixte)
Créez un fichier d'identification qui apt
ne prenne en compte que les paquets qui nous intéressent (nous ne voulons certainement pas que toute notre distribution Ubuntu soit "mise à niveau" avec les paquets expérimentaux Debian).
Créer un fichier /etc/apt/preferences.d/debian
avec le contenu ci-dessous. Vous aurez besoin de privilèges de super - utilisateur, utilisez donc l' un des sudo vim
, sudo nano
, gksudo gedit
, etc.
Package: *
Pin: release o=Debian,n=experimental
Pin-Priority: -1
Package: *
Pin: release o=Debian,n=sid
Pin-Priority: -1
Package: openjdk-7-jdk
Pin: release o=Debian,n=experimental
Pin-Priority: 500
Package: openjdk-7-jre
Pin: release o=Debian,n=experimental
Pin-Priority: 500
Package: openjdk-7-jre-headless
Pin: release o=Debian,n=experimental
Pin-Priority: 500
Package: libjpeg62-turbo
Pin: release o=Debian,n=sid
Pin-Priority: 500
Pour Ubuntu 17.10 et les versions antérieures, ajoutez également les éléments suivants (et voir la note en bas):
Package: libfontconfig1
Pin: release o=Debian,n=sid
Pin-Priority: 500
Package: fontconfig-config
Pin: release o=Debian,n=sid
Pin-Priority: 500
Installez le trousseau Debian:
sudo apt install debian-archive-keyring
Remarque: bien qu’il s’agisse de la méthode la plus simple d’ajout du trousseau de clés debian, elle peut ne pas être à jour. Recherchez les résultats suivants lors de l'exécution apt update
de l'étape 4:
W: erreur GPG: http://cdn-fastly.deb.debian.org/debian expérimentale InRelease: les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible: NO_PUBKEY 8B48AD6246925553 NO_PUBKEY 7638D0442B90D010
E: Le référentiel 'http://httpredir.debian.org/debian experimental InRelease' n'est pas signé.
Si vous voyez cette erreur, ajoutez manuellement les clés nécessaires avec:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8B48AD6246925553
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7638D0442B90D010
où 8B48AD6246925553
et 7638D0442B90D010
doit correspondre aux mots clés publics que vous voyez dans le message d'avertissement.
Ajoutez les référentiels nécessaires:
sudo add-apt-repository 'deb http://httpredir.debian.org/debian experimental main'
sudo add-apt-repository 'deb http://httpredir.debian.org/debian sid main'
Pourquoi ne pas utiliser un référentiel Debian stable? Vous rencontrerez des dépendances insatisfiables avec Debian stable. Les référentiels expérimental (pour openjdk-7) et sid (pour libjpeg62-turbo, libfontconfig1 et fontconfig-config) sont plus cléments avec les versions de dépendance.
Mettre à jour le apt
cache (cela devrait prendre un certain temps puisque les listes de paquets de Debian sont grandes):
sudo apt update
Installez openjdk-7-jdk:
sudo apt install openjdk-7-jdk
Mettre à jour les alternatives Java. Vous pouvez voir toutes les versions de Java installées avec update-java-alternatives --list
. Pour activer OpenJDK Java 1.7, exécutez:
sudo update-java-alternatives -s java-1.7.0-openjdk-amd64
Vous remarquerez peut-être une erreur indiquant que le IcedTeaPlugin.so
plug - in est indisponible. Ce n'est pas un problème pour les développeurs qui travaillent avec le JDK.
Vérifiez que Java fonctionne:
java -version
qui devrait produire quelque chose de similaire à:
version java "1.7.0_161"
Environnement d'exécution OpenJDK (IcedTea 2.6.12) (7u161-2.6.12-1)
Ordinateur virtuel serveur OpenJDK 64 bits (version 24.161-b01, mode mixte)