Si vous téléchargez le binaire linux depuis Sun, vous pouvez l'installer dans le répertoire de votre choix. Ensuite, faites simplement référence à ces bibliothèques dans votre code, et vous êtes prêt à partir.
Avec le programme d'installation binaire, il créera son propre sous-répertoire nommé (par exemple dans votre exemple, /usr/java/jdk1.5.0_), afin que vous puissiez en télécharger autant que vous le souhaitez, et ils s'aligneront dans un nom approprié sous-drectories.
Le binaire java principal réside dans / usr / bin, donc si vous voulez le remplacer au point où lorsque vous tapez "java", il accède à votre java, et non à celui-ci, vous déplacez simplement l'ancien hors de / usr / bin , et associez-y votre nouveau. La saisie which javavous dira quel est le java par défaut sur votre système.
@jldupont: Quand je pense aux installations simultanées, je pense à plusieurs versions installées sur la même machine, ce que ma méthode vous donnera absolument. J'ai environ 12 versions de java installées sur ma boîte de production pour gérer les documents pratiques des entreprises qui n'ont pas encore été mis à jour.
Cependant, lorsque vous tapez "java", vous n'obtiendrez qu'une seule version de java, car c'est ce qui se trouve dans '/usr/bin'... Vous devez taper quelque chose comme' /usr/java/jdk1.5.1/ bin / java 'pour obtenir un binaire java spécifique qui n'est pas la valeur par défaut du système.
Merci mais j'ai besoin d' installations simultanées . Comment je fais ça?
jldupont
Merci. J'ai maintenant installé JDK5 dans / opt et me suis écrit un script bash pour configurer les variables d'environnement ... il semble que cela fonctionne. Je pensais que ce serait plus douloureux que ça!
jldupont
@jldupont: En fait, c'est une des choses que j'aime avec Linux ... Puisqu'il n'y a pas de registre pour vous gêner, vous pouvez installer la même chose cent fois, et ce n'est pas un problème tant que vous vous assurez pour ne pas écraser les fichiers communs. Je connais beaucoup de gens qui exécutent (par exemple) plusieurs versions différentes d'Apache. J'ai moi-même tendance à exécuter plusieurs versions de Perl et Java.
Satanicpuppy
1
Téléchargez et exécutez simplement le fichier .bin à partir d'Oracle qui s'extrait ensuite dans un dossier. Déplacez ce dossier (par exemple jdk1.6.0_32) dans / usr / lib / jvm puis le script setjavaque j'utilise pour changer les versions de java. En raison des exportdéclarations, vous devez cependant rester dans le même terminal. De plus, certains petits outils jvm peuvent ne pas être définis, mais je suppose que cela devrait fonctionner dans la plupart des cas. Je suis aussi un noob shell donc corrigez-moi s'il y a une meilleure possibilité :-) Le code pour moi est:
#!/bin/bash
# shouldnt be used in a loop, else the path may become too long
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
echo "Not running as root"
exit
fi
case "$1" in
6)
echo "Setting Java version 6"
export PATH=/usr/lib/jvm/jdk1.6.0_32/bin:$PATH
export JAVA_HOME=/usr/lib/jvm/jdk1.6.0_32
sudo rm /usr/bin/java
sudo rm /usr/bin/javac
sudo rm /usr/bin/javadoc
sudo rm /usr/bin/javah
sudo rm /usr/bin/javap
sudo rm /usr/bin/javaws
sudo ln -s /usr/lib/jvm/jdk1.6.0_32/bin/java /usr/bin/java
sudo ln -s /usr/lib/jvm/jdk1.6.0_32/bin/javac /usr/bin/javac
sudo ln -s /usr/lib/jvm/jdk1.6.0_32/bin/javadoc /usr/bin/javadoc
sudo ln -s /usr/lib/jvm/jdk1.6.0_32/bin/javah /usr/bin/javah
sudo ln -s /usr/lib/jvm/jdk1.6.0_32/bin/javap /usr/bin/javap
sudo ln -s /usr/lib/jvm/jdk1.6.0_32/bin/javaws /usr/bin/javaws
javac -version
java -version
;;
7)
echo "Setting Java version 7"
export PATH=/usr/lib/jvm/java-7-openjdk/bin:$PATH
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk/
sudo rm /usr/bin/java
sudo rm /usr/bin/javac
sudo rm /usr/bin/javadoc
sudo rm /usr/bin/javah
sudo rm /usr/bin/javap
sudo rm /usr/bin/javaws
sudo ln -s /usr/lib/jvm/java-7-openjdk/bin/java /usr/bin/java
sudo ln -s /usr/lib/jvm/java-7-openjdk/bin/javac /usr/bin/javac
sudo ln -s /usr/lib/jvm/java-7-openjdk/bin/javadoc /usr/bin/javadoc
sudo ln -s /usr/lib/jvm/java-7-openjdk/bin/javah /usr/bin/javah
sudo ln -s /usr/lib/jvm/java-7-openjdk/bin/javap /usr/bin/javap
sudo ln -s /usr/lib/jvm/java-7-openjdk/bin/javaws /usr/bin/javaws
javac -version
java -version
;;
*)
echo "Usage: $0 {6|7}"
esac
exit 0
Téléchargez et exécutez simplement le fichier .bin à partir d'Oracle qui s'extrait ensuite dans un dossier. Déplacez ce dossier (par exemple
jdk1.6.0_32
) dans / usr / lib / jvm puis le scriptsetjava
que j'utilise pour changer les versions de java. En raison desexport
déclarations, vous devez cependant rester dans le même terminal. De plus, certains petits outils jvm peuvent ne pas être définis, mais je suppose que cela devrait fonctionner dans la plupart des cas. Je suis aussi un noob shell donc corrigez-moi s'il y a une meilleure possibilité :-) Le code pour moi est:la source