Есть ли разница между настройкой JAVA_HOME через строку cmd или графический интерфейс - PullRequest
5 голосов
/ 20 апреля 2009

Это настоящий нубский вопрос.

Когда я настраивал JAVA_HOME с использованием интерфейса командной строки, я использовал set JAVA_HOME = C: \ Program Files \ Java \ jdk1.6.0_13

Однако, когда я открываю переменную JAVA_HOME в System> Advanced> Environment Variables, изменение не видно. Это две разные настройки?

У меня возникает этот вопрос каждый раз, когда я создаю новый JDK, и я никогда полностью не понимаю, почему эти два кажутся разными.

Ответы [ 4 ]

7 голосов
/ 20 апреля 2009

Переменная, которую вы устанавливаете в командной строке, предназначена для этой командной оболочки и любых других процессов, которые она запускает. Когда вы устанавливаете его из System / Advanced / Environment Variables, это влияет на любой другой процесс, который вы запускаете, включая командную оболочку, после его установки. В зависимости от того, где вы его установили, он будет доступен для того же пользователя или любого другого пользователя, который также входит в систему.

3 голосов
/ 20 апреля 2009

Изменения, внесенные в родительский процесс, распространяются только на вновь созданные дочерние элементы; попробуйте открыть новую командную строку и проверить значение там.

3 голосов
/ 20 апреля 2009

JAVA_HOME, установленный в командной строке, устанавливается только для этого сеанса оболочки.

2 голосов
/ 20 апреля 2009

Что говорили другие ...: -)

Я добавлю, что даже после установки переменной в диалоге уже запущенные процессы (в общем) не знают об изменении: например. окно командной строки по-прежнему будет отображать старое значение. Вы должны открыть другое окно, чтобы увидеть изменения.
В некоторых (редких) случаях вам может даже потребоваться выйти из системы и снова войти в нее, чтобы подтвердить изменение (я недавно это видел).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...