Многие приложения на основе java требуют установки переменной env JAVA_HOME. Для чего нужна эта переменная?
Многие приложения на основе java требуют установки переменной env JAVA_HOME. Для чего нужна эта переменная?
Ответы:
Переменные среды - это строки, содержащие такую информацию, как диск, путь или имя файла.
В переменную JAVA_HOME указывает на каталог , где среда выполнения Java (JRE) , установленной на вашем компьютере.
Цель состоит в том, чтобы указать, где установлена Java. $JAVA_HOME/bin/java
должен выполнить среду выполнения Java.
Когда вы запускаете Java-программу, вам нужно сначала запустить JVM, обычно это делается путем запуска исполняемого файла, в Windows это java.exe . Вы можете получить это разными способами, например, просто указав полный путь:
C:\somedir\bin\java.exe
или может иметь его в вашем PATH.
Вы указываете в качестве аргументов командной строки некоторые файлы классов или файлы Jar, содержащие файлы классов, которые являются вашей программой. Но этого недостаточно, самому java.exe нужны различные другие ресурсы, не в последнюю очередь все библиотеки Java. Устанавливая переменную среды JAVA_HOME, вы указываете, где находится JRE и, следовательно, все эти ресурсы времени выполнения. Вы должны убедиться, что конкретная Java, которую вы выполняете, соответствует настройке JAVA_HOME.
Вам также может потребоваться заранее JAVA_HOME\bin
указать путь, чтобы в случае java.exe
появления копии самого себя (например, для компиляции JSP) он подобрал правильную версию.
Согласно @dirai, здесь JAVA_HOME
используется не сама Java, а некоторые сторонние инструменты, такие как, например, Apache Tomcat. Однако большинство приложений будут работать без установки этой переменной, но некоторые могут показывать неожиданное поведение.
JAVA_HOME
это переменная среды .
Его нужно настроить в другой операционной системе. Ознакомьтесь со следующими ссылками.
Также см. Здесь для получения дополнительной информации.
environment
с path
разными вещами, но они используются в Windows точно так же, как и в Linux.
JAVA_HOME
позволяет запускать любую из нескольких установок Java. Даже если /usr/lib/jvm/java-1.8.0/bin/java
сначала у вас есть переменная в PATH, полезно иметь возможность сказать JAVA_HOME=/usr/lib/jvm/java-1.5.0
и использовать по умолчанию «java», с которым вы запускаете программы, вместо этого в качестве параметра среды. Это позволяет программисту использовать нужную им java, даже если она не установлена в обычном системном расположении, и тестировать или обеспечивать обратную совместимость с этой альтернативной версией. И он не уязвим для сброса в PATH другой установленной программой, такой как обновление основной версии для самой java.