J'essaie de comprendre le fonctionnement de classpath. Après une recherche sur le web c'est là où je suis arrivé à ce jour:Java classpath - Linux
J'ai ajouté
export CLASSPATH="/home/foo:/home/foo/Java_code/my_code"
à /etc/environment
. Je cours Ubuntu en passant.
Java trouve le chemin et compile sans problème.
Le problème est que si je change le CLASSPATH et que je fais: source /etc/environment
, le nouveau CLASSPATH n'est pas appliqué. Il est appliqué si et seulement si je redémarre le système. Par exemple, si je supprime le
export CLASSPATH="/home/foo:/home/foo/Java_code/my_code"
ligne, alors je fais la source/etc/environnement et je fais enfin echo $CLASSPATH
, ce que je reçois est /home/foo:/home/foo/Java_code/my_code
. Je pense que je devrais avoir une ligne vide, n'est-ce pas?
Existe-t-il un moyen d'appliquer immédiatement les modifications dans les variables PATH ou CLASSPATH sans avoir à redémarrer le système?
Il peut vous aider à savoir que le fichier/etc/environnement à l'origine ne contenait que la ligne suivante:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
Merci pour votre temps.
Comment supprimez-vous le classpath? –
pourquoi faites-vous tout cela, quel est votre environnement?/etc/environment est utilisé pour définir les variables d'environnement pour les applications graphiques. Si vous avez des graphiques, vous pouvez utiliser IDE. Pourquoi aller à tous ces problèmes avec l'inclusion de votre dossier de départ + projets dans classpath? – hovanessyan
J'essaie simplement de définir CLASSPATH de façon permanente afin d'importer des paquets de dossiers spécifiques sans avoir à le définir chaque fois que je lance javac. – tomatoeggs