Гид по технологиям

Установка и настройка Apache Maven на CentOS 7

• 4 min read • DevOps • Обновлено 18 Nov 2025
Установка Apache Maven на CentOS 7
Установка Apache Maven на CentOS 7

Краткое описание

Apache Maven — это инструмент управления сборкой и зависимостями, основанный на концепции POM (Project Object Model — модель проекта). Maven чаще всего применяется в Java-проектах, но может использоваться и для сборки проектов на других языках (C#, Ruby, Scala и т.д.). В этом пошаговом руководстве показано, как установить и настроить Apache Maven на сервере CentOS 7.

Что потребуется

  • Сервер CentOS 7
  • Права root или доступ через sudo

План действий

  1. Установить Java OpenJDK на CentOS 7
  2. Скачать двоичный архив Apache Maven
  3. Настроить окружение для Maven
  4. Проверить установку

Шаг 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. Например:

Установка Java OpenJDK 8 на CentOS 7 — пример вывода java -version

Важно: если ваша инфраструктура требует другой версии 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-конфигураций.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро