Je fixe mon JAVA_HOME
dans mon ~/.bashrc
fichier.
Maintenant, j'ai besoin de créer un script qui changera la JAVA_HOME
juste pour le terminal actuel, afin que je puisse lancer une application qui nécessite java 5.
J'ai créé ce script pour faire cette tâche, mais après avoir terminé, je peux voir que JAVA_HOME n'est pas mis à jour.
export JAVA_HOME=/usr/lib/jvm/java-5-oracle/
export PATH=$PATH:$JAVA_HOME
Voici le résultat
$ ./javaHome5.sh
$ echo $JAVA_HOME
/usr/lib/jvm/java-6-oracle/
Je pense que la raison pour laquelle cela n'est pas appliqué, est qu'un script s'exécute dans son propre terminal, donc quand le script se termine, le terminal actuel ne sera pas affecté.
Actuellement, le seul moyen que j'ai trouvé pour contourner ce problème est :
- Modifier mon
~/.bashrc
et changer le JAVA_HOME var - Exécuter
source ~/.bashrc
pour appliquer les changements dans le terminal actuel. Ce qui, encore une fois, ne peut pas être appliqué dans un script, car l'optionsource
doit être exécutée dans la fenêtre actuelle.
Inutile de dire que ce changement s'applique à tous les nouveaux terminaux Windows, ce qui fait que je dois pratiquement effectuer cette opération deux fois : une fois avant de lancer mon application, et une autre fois juste après, juste pour rétablir les variables d'environnement par défaut. Ce n'est pas vraiment pratique.
Avez-vous une idée de la façon dont je peux changer cette var en utilisant un script ?