Установка Apache Maven на CentOS 8
В этой статье показано, как шаг за шагом установить Apache Maven 3.6.2 на CentOS 8: установить Java OpenJDK 11, загрузить двоичный архив Maven, настроить системные переменные и проверить установку. Приведены альтернативные способы установки, типичные ошибки и чеклисты для администратора и разработчика.

Apache Maven — инструмент управления проектами и автоматизации сборки, основанный на концепции POM (Project Object Model). Maven обычно используется для проектов на Java, но также поддерживает проекты на C#, Ruby, Scala и других языках через плагины. Maven описывает процесс сборки и зависимости проекта.
Требования
- Сервер с CentOS 8
- root-права или sudo-доступ
Что мы сделаем
- Установим Java OpenJDK 11 на CentOS 8
- Скачиваем двоичный файл Apache Maven 3.6.2
- Настроим переменные окружения для Maven
- Проверим установку
Шаг 1 — Установка Java OpenJDK на CentOS 8
Сначала установим Java OpenJDK 11 из репозитория AppStream. В репозитории доступны разные версии OpenJDK; здесь используем LTS‑версию 11.
Получить список доступных пакетов OpenJDK можно командами:
dnf search openjdk
dnf info java-11-openjdkУстановите OpenJDK 11:
sudo dnf install java-11-openjdkПосле завершения установки проверьте версию Java:
java -version
Результат подтверждает, что OpenJDK 11 установлен на сервере.
Шаг 2 — Загрузка двоичного архива Apache Maven
В этом руководстве мы устанавливаем Apache Maven 3.6.2. Перейдите в каталог /usr/local/src и скачайте архив с официального зеркала:
cd /usr/local/src
wget https://www-eu.apache.org/dist/maven/maven-3/3.6.2/binaries/apache-maven-3.6.2-bin.tar.gzРаспакуйте архив и переместите директорию в /usr/local/maven:
tar -xf apache-maven-3.6.2-bin.tar.gz
mv apache-maven-3.6.2 /usr/local/maven/После этого Maven будет находиться в каталоге /usr/local/maven.

Шаг 3 — Настройка окружения Apache Maven
Чтобы Maven был доступен всем пользователям системы, создадим скрипт в /etc/profile.d/.
Перейдите в каталог и создайте файл maven.sh в любом текстовом редакторе (vim, nano и т. п.):
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/maven
export PATH=${M2_HOME}/bin:${PATH}Сохраните файл и сделайте его исполняемым, затем загрузите переменные в текущую сессию:
chmod +x /etc/profile.d/maven.sh
source /etc/profile.d/maven.shТеперь команда mvn доступна для всех пользователей.

Шаг 4 — Тестирование
Проверьте установку командой:
mvn --versionВы должны увидеть информацию о версии Maven, Java и системе:

Если вывод похож на приведённый, установка Maven 3.6 завершена. Maven использует Java OpenJDK 11 и директорию /usr/local/maven как MAVEN_HOME.
Альтернативные подходы и примечания
- Установка через пакетный менеджер: в репозиториях CentOS доступен пакет maven (dnf install maven). Он проще, но часто содержит более старую версию по сравнению с официальным сайтом Apache.
- Использование SDKMAN!: менеджер версий для JVM-инструментов (sdkman.io) позволяет быстро переключать версии Maven без ручной настройки переменных.
- Для автоматизации на CI/CD сервере рекомендуется устанавливать Maven в контейнере или использовать официальные образы с нужной версией.
Важно: CentOS 8 достигла конца срока официальной поддержки; для долгоживущих серверов рассмотрите модернизацию до совместимых дистрибутивов (например, AlmaLinux или Rocky Linux) или используйте актуальную сборку в контейнере.
Типичные ошибки и способы их устранения
- mvn: команда не найдена — проверьте, выполнены ли команды chmod и source, и корректен ли PATH.
- Неверная версия Java — Maven требует JDK; убедитесь, что java -version показывает JDK 11 или выше в соответствии с требованиями вашей сборки.
- Проблемы с правами доступа — если Maven установлен в каталог, доступный только root, убедитесь, что доступ настроен для нужных пользователей.
- Ошибки сетевого доступа при скачивании — проверьте доступ к зеркалу Apache или используйте альтернативное зеркало.
Чеклисты по ролям
Администратор сервера
- Установить OpenJDK 11 и проверить java -version
- Скачать и распаковать apache-maven в /usr/local/maven
- Создать /etc/profile.d/maven.sh и применить его
- Проверить mvn –version в разных сессиях
Разработчик
- Убедиться, что MAVEN_HOME и PATH настроены в вашей сессии
- Выполнить mvn -v и mvn clean package на тестовом проекте
- Проверить, что используемая версия Java совместима с проектом
CI-инженер
- Включить установку Maven в Dockerfile или использовать образ с Maven
- Настроить кеширование репозитория ~/.m2/repository
- Добавить шаги в pipeline для проверки mvn –version и сборки
Критерии приёмки
- mvn –version возвращает ожидаемую версию Maven и Java
- Команда mvn доступна для обычного пользователя без root
- Проект успешно собирается командой mvn clean package
Быстрый шаблон файла /etc/profile.d/maven.sh
export M2_HOME=/usr/local/maven export PATH=${M2_HOME}/bin:${PATH}
Сохраните файл, выполните chmod +x и source, как описано ранее.
Краткий глоссарий (1‑строчные определения)
- POM — XML-файл описания проекта и зависимостей в Maven.
- MAVEN_HOME / M2_HOME — корневая директория установки Maven.
- mvn — исполняемая команда Maven для сборки и управления проектами.
Факты и рекомендации
- Используйте официальные двоичные архивы Apache для контроля версии.
- Для серверов с долгим сроком службы планируйте миграцию с CentOS 8 на поддерживаемую платформу.
- Для CI предпочтительнее контейнеры с заранее установленным Maven.
Резюме
Установка Apache Maven на CentOS 8 включает установку Java 11, загрузку двоичного архива Maven, настройку /etc/profile.d/maven.sh и проверку mvn –version. В статье представлены альтернативы, распространённые ошибки и чеклисты для разных ролей.
Источник:
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента