4 votes

Comment supprimer Java dans Debian ?

java -version
java version "1.6.0_18"
OpenJDK Runtime Environment (IcedTea6 1.8.13) (6b18-1.8.13-0+squeeze2)
OpenJDK 64-Bit Server VM (build 14.0-b16, mixed mode)

Il ne semble pas y avoir de moyen facile de rechercher des paquets dans apt, j'utilise donc dpkg pour rechercher les paquets relatifs à la java :

# dpkg --get-selections | less | grep java
ca-certificates-java            install
java-common                     install
javascript-common               install
libaccess-bridge-java           install
libaccess-bridge-java-jni       install
libdb4.7-java-gcj               deinstall
libhsqldb-java-gcj              deinstall
sun-java6-bin                   deinstall
sun-java6-jre                   deinstall
tzdata-java                     install

Je procède à la suppression de java-common, mais à la fin, java est toujours installé et java -version affiche toujours la même chose.

Rien ne change, le paquet java-common apparaît même toujours dans la recherche dpkg. Qu'est-ce qui me manque ?

J'ai également supprimé OpenJDK, ce qui semble l'avoir mis sur "deinstall" :

# dpkg --get-selections | less | grep openjdk
openjdk-6-jre                   deinstall
openjdk-6-jre-headless          install
openjdk-6-jre-lib               install

Java est toujours là.

# java -version
java version "1.6.0_18"
OpenJDK Runtime Environment (IcedTea6 1.8.13) (6b18-1.8.13-0+squeeze2)
OpenJDK 64-Bit Server VM (build 14.0-b16, mixed mode)

10voto

DavidGamba Points 381

Pour moi, c'était :

sudo apt-get remove openjdk-6*
sudo apt-get remove icedtea*

3voto

K i r k H 4 2 0 Points 31

Je suis tombé sur ce sujet parce que je travaille sur un livre d'instruction pour la programmation Android qui veut utiliser un Java SE et JRE spécifique (8u121) et demande que tous les autres paquets java soient supprimés avant de continuer l'installation. Donc, après avoir lu les idées ci-dessus, j'ai choisi :

sudo apt-get remove openjdk*

et le résultat était :

bryan@kali:~$ java -version
bash: /usr/bin/java: No such file or directory

Donc, ce qui précède suggère qu'il n'y a pas de java trouvé, quelle que soit la version. C'est ce que le PO voulait faire (je pense).

Au cas où quelqu'un trouverait ce fil de discussion parce qu'il est en train de désinstaller Java pour pouvoir installer une ancienne version, j'ai inclus un guide que j'ai trouvé. Les deux premiers codes vous aident à l'installer si vous n'avez pas d'interface graphique. Si vous avez une archive, ne les utilisez pas. Le dernier bloc de code a quelques parties que vous devrez modifier si vous n'installez pas ma même version.


{continue à copier/coller}

Si vous essayez d'installer Java JDK à distance et que vous n'avez absolument pas accès à l'interface utilisateur graphique et au navigateur Web, utilisez la méthode curl suivante pour télécharger Java JDK en utilisant une ligne de commande.

Tout d'abord, obtenez une URL de téléchargement correcte en utilisant la commande curl :

$ curl -s http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html | grep "otn-pub" | cut -d \" -f12

La commande ci-dessus produit un ensemble d'URLs pour votre sélection. Pour lancer le téléchargement du fichier Java souhaité, copiez son URL et lancez le téléchargement à l'aide de la commande curl tout en acceptant la licence Jave demandée. Par exemple :

$ curl -LOb "oraclelicense=a" http://download.oracle.com/otn-pub/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441/jdk-8u121-linux-x64.tar.gz

Installer Java JDK À ce stade, nous devrions avoir une archive appropriée de Java JDK dans notre répertoire de travail actuel :

$ ls
jdk-8u121-linux-x64.tar.gz

Créez un répertoire d'installation de Java JDK cible :

# mkdir /opt/java-jdk

Extrayez l'archive tarball Java JDK téléchargée précédemment :

# tar -C /opt/java-jdk -zxf jdk-8u121-linux-x64.tar.gz

Définir Oracle Java comme valeur par défaut Actuellement, le système ne reconnaît pas notre installation Java JDK :

$ update-alternatives --list java
update-alternatives: error: no alternatives for java
$ java
bash: java: command not found

Utilisez la commande update-alternatives pour inclure java et javac dans l'environnement Java du système. Veuillez remplacer le chemin d'accès aux binaires java ci-dessous pour refléter la version de java que vous avez téléchargée :

# update-alternatives --install /usr/bin/java java /opt/java-jdk/jdk1.8.0_121/bin/java 1   
update-alternatives: using /opt/java-jdk/jdk1.8.0_121/bin/java to provide /usr/bin/java (java) in auto mode
# update-alternatives --install /usr/bin/javac javac /opt/java-jdk/jdk1.8.0_121/bin/javac 1
update-alternatives: using /opt/java-jdk/jdk1.8.0_121/bin/javac to provide /usr/bin/javac (javac) in auto mode

{fin du copier/coller}

Ok, après avoir suivi cette procédure, je voulais confirmer que cela fonctionne...

bryan@kali:~/Desktop$ java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)

C'est ça ! C'est ce que nous voulons.

Puis je me suis inquiété du fait que "apt update" pourrait annuler ce que j'ai fait en mettant à jour le paquet (incertain). Je les ai donc mis en attente. Pour supprimer la mise en attente : apt-mark unhold.

bryan@kali:~/Desktop$ sudo apt-mark hold openjdk-8*
openjdk-8-jre set on hold.
openjdk-8-jre-headless set on hold.
openjdk-8-doc set on hold.
openjdk-8-jdk set on hold.
openjdk-8-dbg set on hold.
openjdk-8-demo set on hold.
openjdk-8-jdk-headless set on hold.
openjdk-8-source set on hold.
openjdk-8-jre-dcevm set on hold.
openjdk-8-jre-zero set on hold.

-1voto

BenjiWiebe Points 8464

Avez-vous essayé :

  1. sudo apt-get remove '*jre*'
  2. sudo apt-get remove '*icedtea*'

Ce sont juste des expressions rationnelles qui devraient correspondre à tout ce qui contient "icedtea" ou "jre" dans le nom.
J'espère que cela vous aidera !

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X