Установка и настройка Apache Maven на CentOS 7
Краткое описание
Apache Maven — это инструмент управления сборкой и зависимостями, основанный на концепции POM (Project Object Model — модель проекта). Maven чаще всего применяется в Java-проектах, но может использоваться и для сборки проектов на других языках (C#, Ruby, Scala и т.д.). В этом пошаговом руководстве показано, как установить и настроить Apache Maven на сервере CentOS 7.
Что потребуется
- Сервер CentOS 7
- Права root или доступ через sudo
План действий
- Установить Java OpenJDK на CentOS 7
- Скачать двоичный архив Apache Maven
- Настроить окружение для Maven
- Проверить установку
Шаг 1 — Установка Java OpenJDK на CentOS 7
Apache Maven требует JDK 1.7 или выше. В этом руководстве используется OpenJDK 8, доступный в репозитории CentOS.
Выполните установку через yum:
sudo yum install -y java-1.8.0-openjdk-develПосле установки проверьте версию Java:
java -versionВы должны увидеть вывод с информацией о версии Java. Например:

Важно: если ваша инфраструктура требует другой версии JDK (например, OpenJDK 11), адаптируйте команды и убедитесь, что Maven поддерживает выбранную версию.
Шаг 2 — Скачивание Apache Maven
Переходим в каталог, где будем хранить бинарные файлы Maven. В этом примере используется /usr/local/src.
cd /usr/local/src
wget http://www-us.apache.org/dist/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gzРаспакуйте архив и удалите сжатый файл:
tar -xf apache-maven-3.5.2-bin.tar.gz
rm -f apache-maven-3.5.2-bin.tar.gzПереименуйте каталог в удобное имя:
mv apache-maven-3.5.2/ apache-maven/Теперь Maven находится в /usr/local/src/apache-maven.
Шаг 3 — Настройка окружения Apache Maven
Создайте скрипт профиля для глобальной настройки переменных окружения. Перейдите в /etc/profile.d и создайте файл maven.sh:
cd /etc/profile.d/
vim maven.shВставьте следующие строки:
# Apache Maven Environment Variables
# MAVEN_HOME for Maven 1 - M2_HOME for Maven 2
export M2_HOME=/usr/local/src/apache-maven
export PATH=${M2_HOME}/bin:${PATH}Сохраните файл, затем сделайте его исполняемым и примените изменения:
chmod +x maven.sh
source /etc/profile.d/maven.shПримечание: можно использовать M2_HOME или MAVEN_HOME в зависимости от скриптов и плагинов в вашем окружении. Здесь мы задаём M2_HOME для совместимости с более старыми плагинами.
Шаг 4 — Проверка установки
Проверьте, что mvn доступен и отображает корректную информацию:
mvn --versionОжидаемый результат: информация о версии Maven, версия Java и путь к Maven Home, например ‘/usr/local/src/apache-maven’. Если команда не найдена или вывод некорректен, проверьте PATH и содержимое /etc/profile.d/maven.sh.
Критерии приёмки
- Команда mvn –version возвращает версию Maven и указывает правильный Maven Home
- Java версии 1.7+ установлена и видна в выводе mvn –version
- Переменная PATH содержит путь к /usr/local/src/apache-maven/bin для всех интерактивных и неинтерактивных сессий (если требуется — проверьте systemd-юниты или контекст сервиса)
Возможные ошибки и их устранение
- mvn: command not found — убедитесь, что /etc/profile.d/maven.sh загружен для текущего пользователя или что PATH обновлён в systemd-юните, если запуск происходит из сервиса.
- Неподдерживаемая версия Java — Maven может требовать более новой/старой версии JDK; установите совместимую версию (например, OpenJDK 8 или 11).
- Ошибки прав доступа — проверьте владельца и права на каталог /usr/local/src/apache-maven и на скрипт /etc/profile.d/maven.sh.
Альтернативные подходы
- Установка через пакетный менеджер EPEL / dnf/yum: в некоторых репозиториях доступны пакеты maven, но они могут быть старых версий.
- Использование SDKMAN (https://sdkman.io/) для управления версиями Maven и JDK пользователем без глобальной установки.
- Упаковка в Docker-контейнер: для CI/CD удобно использовать официальный образ с Maven, чтобы избежать вмешательства в систему.
Рекомендации по версиям и миграции
- Проверяйте совместимость плагинов и плагинных конфигураций при обновлении Maven.
- При миграции проекта с Maven 2 → Maven 3 проверьте POM на устаревшие плагины и плагины сборки.
- Если вы используете CI (Jenkins, GitLab CI и т.д.), убедитесь, что среда сборки знает о M2_HOME или использует образ/контейнер с Maven.
Контроль качества: тесты приёмки
- Выполнить mvn -v и убедиться, что в выводе отображается ожидаемая версия Maven и Java.
- Выполнить mvn -N io.takari:maven:wrapper (опционально) в корне проекта и убедиться, что wrapper создаётся.
- Запустить сборку примера mvn clean package в тестовом проекте и получить артефакт без ошибок.
Быстрый чек-лист (роль: администратор / разработчик)
Администратор:
- Установил OpenJDK 8+ через yum
- Скачал и распаковал Maven в /usr/local/src
- Создал /etc/profile.d/maven.sh и применил его
- Проверил доступность mvn для сервисов и пользователей
Разработчик:
- Проверил mvn –version
- Запустил сборку проекта mvn clean package
- Подготовил инструкции для CI об использовании M2_HOME или образа с Maven
Короткий глоссарий (1 строка)
- POM — Project Object Model, XML-файл (pom.xml) с описанием проекта и зависимостей Maven.
Итог
Вы установили и настроили Apache Maven на CentOS 7: установили OpenJDK, скачали Maven, настроили переменные окружения и проверили работу команды mvn. Варианты: установка через пакетный менеджер, SDKMAN или Docker для упрощения управления версиями.
Важно: при обновлении Maven или JDK проверяйте совместимость плагинов и CI-конфигураций.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента