Что такое JAVA_HOME? Как JVM находит путь javac сохраненным в JAVA_HOME?

Я хотел бы знать то, что является JAVA_HOME. Где я устанавливаю путь javac.exe и java.exe. Это находится в переменных среды. Когда я компилирую программу Java от командной строки, как JVM находит javac.exe?

43
задан galath 23 July 2015 в 14:52
поделиться

3 ответа

JVM не находит java.exe. Он даже не называет его. java.exe вызывается операционной системой (в данном случае Windows).

JAVA_HOME - это просто конвенция, обычно используемая Tomcat, другими серверами приложений Java EE и инструментами сборки, такими как Gradle, чтобы найти, где живет Java.

Важным, с Вашей точки зрения, является то, что каталог Java /bin находится на Вашем PATH, так что Windows может найти инструменты .exe, которые поставляются с JDK: javac.exe, java.exe, jar.exe и др.

54
ответ дан 26 November 2019 в 22:50
поделиться

Командная строка не использовала бы JAVA_HOME для поиска javac.exe, она использовала бы PATH.

11
ответ дан 26 November 2019 в 22:50
поделиться

JAVA_HOME - это переменная окружения (в терминологии Unix) или переменная PATH (в терминологии Windows). Многие хорошо работающие Java-приложения (для запуска которых необходим JDK/JRE) ищут переменную JAVA_HOME в том месте, где может быть найден компилятор/интерпретатор Java.

1
ответ дан 26 November 2019 в 22:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: