Я пытаюсь понять, как на самом деле работает classpath. После поиска по сети я достиг этого:
Я добавил
export CLASSPATH="/home/foo:/home/foo/Java_code/my_code"
на /etc/environment
. Кстати, я использую Ubuntu.
Java находит путь и без проблем компилируется.
Проблема в том, что если я изменяю CLASSPATH, а затем делаю: source /etc/environment
, новый CLASSPATH не применяется. Он применяется тогда и только тогда, когда я перезагружаю систему. Например, если я удалю
export CLASSPATH="/home/foo:/home/foo/Java_code/my_code"
, затем я делаю source / etc / environment и, наконец, echo $CLASSPATH
, получаю /home/foo:/home/foo/Java_code/my_code
. Я думаю, что я должен получить пустую строку, не так ли?
Есть ли способ применить изменения в переменных PATH или CLASSPATH немедленно, без перезагрузки системы?
Это может помочь вам узнать, что файл / etc / environment изначально содержал только следующую строку:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
Спасибо за ваше время.