Как установить Maven на Windows, Linux и macOS - Вопросы

Всего: 6 вопросов

1. 

Что значит установить Maven и что нужно сделать перед установкой?

Установить Maven — значит скачать дистрибутив Apache Maven (архив с готовыми файлами), распаковать его и добавить каталог bin в переменную окружения PATH, чтобы команда mvn запускалась из любой папки. Классического инсталлятора у Maven нет: в Windows установка сводится к распаковке и настройке переменных среды, а в Linux и macOS удобнее менеджеры пакетов (apt, dnf, brew) или SDKMAN.

Перед установкой нужен JDK, а не JRE: Maven 3.10.0 (рекомендованная версия) и предыдущая ветка 3.9.x запускаются на Java 8 и новее, Maven 4 (пока в стадии preview) — на Java 17 и новее. Maven находит Java через переменную JAVA_HOME (корень JDK) или, если она не задана, через команду java в PATH. Проверить JDK можно командами java -version и javac -version: если javac не найден, у вас JRE или JDK не добавлен в PATH.

Права администратора для ручной установки не обязательны. Если вы работаете только в IntelliJ IDEA или Eclipse, Maven уже встроен в IDE; отдельная установка нужна, чтобы запускать mvn в терминале, в скриптах и на CI-сервере.

2. 

Какими способами можно установить Maven и какой выбрать?

  • Архив с maven.apache.org — распаковать и добавить bin в PATH. Работает в любой ОС, даёт последнюю версию, не требует прав администратора; переменные и обновление — вручную.
  • Windows: Chocolatey, Scoop, winget — choco install maven (консоль администратора), scoop install maven (без прав администратора); наличие и идентификатор пакета в winget проверяют командой winget search maven. Path настраивается автоматически, JDK нужно установить заранее.
  • Linux: apt, dnf, apk — sudo apt install maven, sudo dnf install maven, apk add maven. Одна команда, но версия из репозитория может отставать: в Ubuntu 22.04 это 3.6.3, в Ubuntu 24.04 и Debian 12 — 3.8.7.
  • macOS: Homebrew — brew install maven, обновление brew upgrade maven. Формула ставит свой openjdk и без JAVA_HOME запускает Maven на нём, поэтому версия Java в mvn -version может отличаться от java -version.
  • SDKMAN (Linux, macOS, WSL) — sdk install maven; удобен, когда нужны несколько версий Maven или JDK (sdk use, sdk default). В «чистом» Windows без WSL или Git Bash не работает.

Для отдельного проекта глобальная установка может не понадобиться, если в нём есть Maven Wrapper (mvnw).

3. 

Где скачать Maven, какой файл выбрать и как проверить скачанный архив?

Скачивать Maven нужно с официального сайта Apache — страница maven.apache.org/download.cgi, раздел «Files». Для Windows выберите Binary zip archive (apache-maven-3.10.0-bin.zip), для Linux и macOS — Binary tar.gz archive (apache-maven-3.10.0-bin.tar.gz). Архивы с src в имени содержат исходный код и для установки не подходят.

Оба бинарных архива содержат одно и то же: Maven написан на Java и не зависит от ОС, отличается только формат упаковки. Это и есть «portable»-версия: распакованную папку можно скопировать в другой каталог или на флешку, и bin\mvn -version запустится без установки.

Зеркало dlcdn.apache.org хранит только текущие версии; старые лежат в archive.apache.org/dist/maven/maven-3/.

Проверка контрольной суммы: рядом с архивом есть файл .sha512. Посчитайте хэш и сравните — строки должны совпасть полностью:

Get-FileHash .\apache-maven-3.10.0-bin.zip -Algorithm SHA512   # Windows (PowerShell)
sha512sum apache-maven-3.10.0-bin.tar.gz                        # Linux
shasum -a 512 apache-maven-3.10.0-bin.tar.gz                    # macOS

PowerShell выводит хэш заглавными буквами, а в .sha512 он строчными — это не ошибка.

4. 

Как установить Maven в Windows 10 и 11 и нужна ли переменная M2_HOME?

  1. Распакуйте zip-архив в каталог без пробелов, например C:\dev: появится C:\dev\apache-maven-3.10.0 с папками bin, boot, conf, lib.
  2. Откройте окно переменных среды: Win+R → sysdm.cpl → «Дополнительно» → «Переменные среды». Переменные пользователя не требуют прав администратора.
  3. Создайте JAVA_HOME со значением корня JDK, без \bin на конце.
  4. В Path добавьте C:\dev\apache-maven-3.10.0\bin.
  5. Закройте все открытые терминалы, откройте новое окно и выполните mvn -version.

M2_HOME не нужна: скрипты Maven перестали её читать начиная с версии 3.5.0. Обязательны только каталог bin в PATH и JDK. MAVEN_HOME можно завести для удобства (в Path тогда пишут %MAVEN_HOME%\bin), но сам Maven её не требует.

Не добавляйте Maven в PATH командой setx: она обрезает значение до 1024 символов. Вместо окна «Переменные среды» можно использовать PowerShell — [Environment]::SetEnvironmentVariable(..., "User").

5. 

Как проверить, что Maven установлен правильно, и на что смотреть в выводе mvn -version?

Выполните в новом терминале mvn -version (или mvn -v). Команда выводит версию Maven, каталог установки и JDK, на котором Maven запущен:

  • Apache Maven — версия, которая реально запускается. Если она старше ожидаемой, раньше в PATH стоит другая установка: проверьте where mvn (Windows) или which mvn (Linux, macOS).
  • Maven home — откуда запущен Maven (после apt install это /usr/share/maven).
  • Java version / runtime — JDK, на котором работает Maven; его javac скомпилирует проект, даже если java -version показывает другую версию. Если здесь JRE, сборка упадёт с No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

mvn без аргументов — не ошибка установки: Maven работает, но сообщает No goals have been specified for this build. А mvn package в папке без pom.xml завершится сообщением there is no POM in this directory — нужно перейти в корень проекта.

6. 

Чем установка Maven отличается от команды mvn install?

«Установить Maven» — значит поставить сам инструмент на компьютер: скачать дистрибутив, распаковать, добавить bin в PATH (или воспользоваться менеджером пакетов) и проверить mvn -version.

Команда mvn install к установке Maven отношения не имеет: это фаза жизненного цикла сборки, которая компилирует и тестирует проект, упаковывает его в jar и копирует результат в локальный репозиторий ~/.m2/repository, чтобы другие ваши проекты могли подключить его как зависимость. В выводе видны строки [INFO] Installing ... to ~/.m2/repository/... и BUILD SUCCESS.

Чтобы просто собрать jar, достаточно mvn package — файл появится в каталоге target.

Страница 1 из 1