Подтвердить что ты не робот

Назначение переменных JAVA_HOME, M2 и M2_HOME

Что мне нужно для переменных среды JAVA_HOME, M2 и M2_HOME, если пути, которые должны туда идти, уже добавлены к моей переменной PATH?

4b9b3361

Ответ 1

JAVA_HOME должен ссылаться на каталог, в котором установлена ​​Java, которую вы хотите использовать. Эта переменная часто используется различными скриптами, поэтому ее рекомендуется определить. JAVA_HOME не следует добавлять к PATH. Вы должны добавить JAVA_HOME/bin, чтобы иметь возможность запускать команды из этого каталога без указания конкретного пути.

M2_HOME является домом для Maven. Он используется script mvn (или mvn.bat в Windows).

Ответ 2

Домашние пути (JAVA_HOME, M2_HOME) не являются обязательными, но хорошими. Одно из преимуществ:

Он помогает вам вносить изменения в одном месте, а не искать вас в переменной PATH при установке следующей версии Java или Maven. Например, переменная среды JAVA_HOME ниже - это одно место, которое мне нужно изменить, когда я обновляю его до Java Development Kit 1.8.

Windows environment variable window

Ответ 3

Я думаю, вы не понимаете понятия переменной окружения. Для начала читайте здесь → http://en.wikipedia.org/wiki/Environment_variable

PATH - это одна переменная среды, которая хорошо известна во многих операционных системах (или оболочках). И это означает, что если вы введете имя программы без полного пути, операционная система (или оболочка) попытается найти все каталоги, указанные в переменной PATH.

Другие программы имеют разные зависимости от среды. Некоторые из них указывают, какие переменные среды им нужны для правильной работы.

JAVA_HOME используется многими приложениями на Java для определения места установки Java Runtime Environment (JRE).

M2_HOME используется Maven, и снова он сообщает программе, где можно найти установку Maven.

PATH не подходит для этой цели, поскольку может содержать много каталогов, не связанных с Java или Maven.

Ответ 4

Переменная PATH используется для поиска приложений (исполняемых файлов и скриптов) и библиотек DLL в Windows. Если вы наберете "mvn", то PATH используется для поиска исполняемого файла или script этого имени. Однако, поскольку script найден в местоположении, это не означает, что приложение установлено в этом каталоге. Самый простой пример для описания - тот, который существует в UNIX. У вас может быть символическая ссылка из /usr/local/bin/mvn на место, где фактически установлена ​​maven. Другие примеры/причины могут быть даны.

Переменные среды используются приложением, чтобы знать, где искать другие ресурсы, которые могут понадобиться приложению.

Например, JAVA_HOME указывает на каталог, в котором находится ваш JDK. Когда JAVA запускается, это приложение знает, что другие ресурсы могут быть найдены относительно каталога JAVA_HOME.

Это позволяет приложению, например, C:\Windows\System32\java, существовать в одном каталоге, но установка JDK будет находиться где-то в другом месте.

То же самое относится к каталогу M2_HOME, который указывает на верхний каталог, где MAVEN "установлен" (или распакован).

Каталог M2 указывает на приложение maven (mvn), где можно найти необходимые хранилища maven. Значение по умолчанию (в UNIX) равно $HOME/.m2, но вам может не понадобиться ваш репозиторий, поэтому вы можете указать другое местоположение, используя переменную среды M2, и maven будет использовать это местоположение вместо стандартного.