Faire $JAVA_HOME facilement changable dans Ubuntu
Dans Ubuntu, j'aimerais changer ma variable d'environnement JAVA_HOME et-vient entre Java 5 et 6.
J'ouvre un terminal et tapez les commandes suivantes pour définir la variable d'environnement JAVA_HOME:
export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun
Et dans la même fenêtre de terminal, j'ai tapez la commande suivante pour vérifier que la variable d'environnement a été mis à jour à:
echo $JAVA_HOME
Et je vois /usr/lib/jvm/java-1.5.0-sun qui est ce que je m'attends à voir. En outre, j'ai modifier ~/.profil et définir la variable d'environnement JAVA_HOME /usr/lib/jvm/java-1.5.0-sun.
Et maintenant, le problème, quand j'ouvre une nouvelle fenêtre de terminal et j'ai vérifier ma variable d'environnement JAVA_HOME en tapant dans echo $JAVA_HOME je vois que ma variable d'environnement JAVA_HOME a été repris pour la version 6 de Java. Quand je reboot ma machine (ou de déconnecter et de se reconnecter, je suppose) la variable d'environnement JAVA_HOME de Java 5 (probablement en raison de la modification que j'ai faite dans mon ~/.de profil).
Est-il un moyen de contourner cela pour que je puisse changer mon JAVA_HOME de l'environnement sans avoir à déconnecter et de se reconnecter (ET faire que la variable d'environnement changement bâton dans tous les nouveaux terminaux windows)?
- Quel est le bon site et le double de réponse?
- Grande question. Pas de grandes réponses.
- Le
~/.profile
fichier est en lecture uniquement lorsque vous ouvrez une session Ubuntu, donc si vous logout/login puis JAVA_HOME est définie pour tous les terminaux et toutes autres applications que vous exécutez. Si vous définissez JAVA_HOME dans~/.bashrc
il ne sera visible que par les applications s'exécutent à partir du terminal.
Vous devez vous connecter pour publier un commentaire.
Mettre les variables d'environnement dans le global
/etc/environment
fichier:Exécuter "source /etc/environnement" dans chaque coquille où vous souhaitez les variables à être mis à jour:
Vérifier qu'il fonctionne:
Grand, pas de déconnexion nécessaire.
Si vous souhaitez définir la variable d'environnement JAVA_HOME que dans le terminal, définissez dans ~/.bashrc fichier.
/etc/environment
fichier de façon permanente. Lors de la seule définition de la variable dans chaque coquille, il serait perdu à nouveau après le redémarrage.export JAVA_HOME;
/etc/environment
est spécial et de ne pas permettre la substitution de variable, par exempleJRE_HOME=${JAVA_HOME}/jre
ne fonctionne pas.Cela va sans doute résoudre votre problème:
https://help.ubuntu.com/community/EnvironmentVariables
Essayez de suivre ces étapes.
--Nous allons modifier ", etc\profile".
Les variables d'environnement doivent être entrées à la fin du fichier. Depuis Ubuntu n'a pas
donner l'accès au dossier racine, nous allons utiliser quelques commandes dans le terminal
Etape 1: Lancer Un Terminal. Tapez la commande:
gksudo gedit /etc/profile
Etape 2: Le profil fichier texte s'ouvre. Entrez les variables d'environnement au bas de la page........... Par exemple:
export JAVA_HOME=/home/alex/jdk1.6.0_22/bin/java
etape 3: enregistrez et fermez le fichier. Vérifier si les variables d'environnement sont définies en utilisant la commande echo........ Par exemple
echo $PATH
Vous besoin de mettre de la définition de la variable dans le
~/.bashrc
fichier.Partir de la page de manuel de bash:
Traditionnellement, si vous voulez seulement changer la variable dans votre terminal windows, de le fixer dans
.bashrc
fichier, qui est tiré à chaque fois qu'un nouveau terminal est ouvert..profile
fichier n'est pas de source à chaque fois que vous ouvrez un nouveau terminal.Voir la différence entre les deux .profil et .bashrc en question:
Quelle est la différence entre les deux .bashrc, .bash_profile, et .de l'environnement?
.bashrc
devrait résoudre votre problème. Cependant, il n'est pas la bonne solution puisque vous utilisez Ubuntu. Voir Ubuntu à l'aide de la page "Session à l'échelle des variables d'environnement". Donc, pas étonnant que.profile
ne fonctionne pas pour vous. J'utilise Ubuntu 12.04 et xfce. J'ai mis en place mon.profile
et il n'est tout simplement pas prise d'effet, même si je me déconnecte, et dans. Expérience similaire ici. Ainsi, vous pourriez avoir à utiliser.pam_environment
fichier et totalement oublier.profile
, et.bashrc
. Et NOTEZ que.pam_environment
n'est pas un fichier de script.Prendre un coup d'oeil à
bash(1)
, vous avez besoin d'un shell de connexion de ramassage~/.profile
, c'est à dire la-l
option.Je sais que c'est un long et froid question, mais il revient a chaque fois c'est une nouvelle ou récente de Java version. Maintenant, ce serait facile de s'appliquer à 6 et 7 de permutation.
Je l'ai fait dans le passé avec
update-java-alternatives
:http://manpages.ubuntu.com/manpages/hardy/man8/update-java-alternatives.8.html
Après l'avoir modifiée .de profil, vous devez exécuter le fichier, pour que les modifications prennent effet.
Une fois que ceci est fait, la commande echo fonctionne.
~/.profile
plutôt que./.profile
.