web-dev-qa-db-fra.com

Ubuntu: changez le chemin d'OpenJDK 6 à Oracle JDK 7

Après avoir téléchargé le dernier fichier .tar, j'ai exécuté tar zxvf jdk-7u45-linux-x64.tar.gz pour extraire Java.

Définissez le chemin dans .bashrc fichier (vi ~/.bashrc) comme ci-dessous;

export Java_HOME=/usr/lib/jvm/jdk1.7.0_45/bin/Java
export PATH=$PATH:/usr/lib/jvm/jdk1.7.0_45/bin
export JDK_HOME=/usr/lib/jvm/jdk1.7.0_45    
export JRE_HOME=/usr/lib/jvm/jre1.7.0_45

Maintenant, exécutez la commande Java -version ou Java, Java PATH pointant toujours vers l'ancienne Java version (Java version "1.6.0_27").

Je sais que Ubuntu par défaut prend le chemin OpenJDK. Je dois modifier le chemin d'accès comme dernière version en tant que variable d'environnement système définie dans .bashrc fichier.

Aussi, Sudo update-alternatives --config Java

Selection    Path                                      Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/Java-7-Oracle/jre/bin/Java    1062      auto mode
  1            /usr/lib/jvm/Java-6-openjdk/jre/bin/Java   1061      manual mode
  2            /usr/lib/jvm/Java-7-Oracle/jre/bin/Java    1062      manual mode
* 3            /usr/lib/jvm/jdk1.7.0_45/bin/Java          1         manual mode
Press enter to keep the current choice[*], or type selection number: 3
21
Devendra Singh

Ubuntu (et Debian) ont une manière élégante de gérer des bibliothèques comme jdk.

En utilisant update-alternatives vous pouvez gérer plusieurs bibliothèques jdk sur le même système, en choisissant celle que vous souhaitez utiliser comme principale.

Vous devez d'abord installer une alternative pour le nouveau jdk installé:

Sudo update-alternatives --install "/usr/bin/Java" "Java" "/usr/lib/jvm/jdk1.7.0_45/bin/Java" 1
Sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0_45/bin/javac" 1

De cette façon, vous installez le nouveau jdk comme alternative à l'original. Ensuite, vous pouvez choisir celui que vous souhaitez utiliser:

Sudo update-alternatives --config Java
Sudo update-alternatives --config javac

On vous demandera de choisir quel jdk vous souhaitez utiliser, sur mon système j'ai:

There are 2 choices for the alternative Java (providing /usr/bin/Java).

  Selection    Path                                           Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/Java-6-openjdk-i386/jre/bin/Java   1061      auto mode
  1            /usr/lib/jvm/Java-6-openjdk-i386/jre/bin/Java   1061      manual mode
* 2            /usr/lib/jvm/Java-7-openjdk-i386/jre/bin/Java   1051      manual mode

Press enter to keep the current choice[*], or type selection number: 

À tout moment, vous pouvez voir quelles alternatives vous avez pour Java ou javac en utilisant le --list option:

Sudo update-alternatives --list Java
Sudo update-alternatives --list javac

Pour voir plus d'options, cochez la case update-alternatives page de manuel.

38
Atropo

Tu veux probablement faire

export PATH=/usr/lib/jvm/jdk1.7.0_45/bin:$PATH

OpenJDK est probablement toujours dans le chemin, et Linux utilisera le premier Java qu'il trouve.

Si vous n'en avez pas besoin, je vous recommande de désinstaller OpenJDK.

8
Petter

Courir

Sudo  update-Java-alternatives --list

pour répertorier toutes les installations Java sur une machine par nom et répertoire, puis exécutez

Sudo  update-Java-alternatives --set [JDK/JRE name e.g. Java-8-Oracle]

pour choisir quel JRE/JDK utiliser.

Si vous souhaitez utiliser différents JDK/JRE pour chaque tâche Java, vous pouvez exécuter des alternatives de mise à jour pour en configurer un Java exécutable à la fois; vous pouvez exécuter

Sudo  update-alternatives --config Java[Tab]

pour voir les commandes Java qui peuvent être configurées (Java, javac, javah, javaws, etc.). Et puis

Sudo  update-alternatives --config [javac|Java|javadoc|etc.]

associera cette tâche/commande Java Java à un JDK/JRE particulier.

Vous devrez peut-être également définir Java_HOME pour certaines applications: à partir de cette réponse vous pouvez utiliser

export Java_HOME=$(readlink -f /usr/bin/Java | sed "s:bin/Java::")

pour les JRE, ou

export Java_HOME=$(readlink -f /usr/bin/Java | sed "s:jre/bin/Java::")

pour les JDK.

7
WillC

Essayez de taper ce qui suit dans votre terminal.

Sudo update-alternatives --config Java

La sortie sera quelques choix et vous pouvez sélectionner celui qui est installé sur votre ordinateur.

5
gihandilanka

Exécution de la commande dans le terminal:

Sudo update-alternatives --config Java 

à partir de la ligne de commande pour définir la version du JRE que vous souhaitez utiliser comme l'installation de la version disponible de Java: 1.6 et 1.8
Voir ci-dessous :

enter image description here

et choisissez 1 option et définissez la version Java-6 car le choix déjà actuel est défini dans Java-8.

4