Installing Apache Maven
The installation of Apache Maven is a simple process of extracting the archive and adding the bin directory with the mvn command to the PATH .
Detailed steps are:
- Have a JDK installation on your system. Either set the JAVA_HOME environment variable pointing to your JDK installation or have the java executable on your PATH .
- Extract distribution archive in any directory
unzip apache-maven-3.9.5-bin.zip
tar xzvf apache-maven-3.9.5-bin.tar.gz
Alternatively use your preferred archive extraction tool.
- Add the bin directory of the created directory apache-maven-3.9.5 to the PATH environment variable
- Confirm with mvn -v in a new shell. The result should look similar to
Apache Maven 3.9.5 (57804ffe001d7215b5e7bcb531cf83df38f93546) Maven home: /opt/apache-maven-3.9.5 Java version: 1.8.0_45, vendor: Oracle Corporation Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/jre Default locale: en_US, platform encoding: UTF-8 OS name: "mac os x", version: "10.8.5", arch: "x86_64", family: "mac"
Установка maven
Мы уже научились писать маленькие программы, поэтому теперь будем учиться писать большие. Как известно, чем больше и сложнее программа, тем больше за ее разработку платят денег:) И начнем с небольшой предыстории…
С ростом размера программ разработчики столкнулись с двумя новыми для себя обстоятельствами:
- Над одной программой работает большое количество людей.
- Нет такого человека, который бы знал весь код программы.
Очень часто начали возникать ситуации, когда программист фиксил баг в одном месте программы и при этом ломал что-то в другом. В release documentation даже появилась такая шутка:
- Исправили старые баги 🙂
- Добавили новые 🙁
Тогда же придумали два подхода к решению этой проблемы: технический и менеджерский.
Технический подход заключался в том, что программы разбивали на части: библиотеки и модули. Каждый такой модуль был небольшим кирпичиком из которых потом выстраивались большие проекты. Библиотеки же – это такие универсальные компоненты, которые могут использоваться в разных программах.
Менеджерский подход был еще интереснее – они ограничивал количество людей, которые могут работать над одним проектом/библиотекой. Эмпирически даже вывели правило: команда должна быть настолько большой, чтобы «ее можно было накормить двумя пиццами» . Обычно это означает, что если над проектом работает более 8 человек, то его нужно разделить на два проекта.
В сообществе Java-разработчиков популярным стало написание библиотек на все случаи жизни и выкладывание их в общий доступ. Таким образом, Java-программисты могли не писать снова один и тот же код (который зачастую был сыроват и содержал баги), а пользоваться готовыми и проверенными решениями.
Дополнительным стимулом стало то, что язык Java получил большую популярность при написании серверных решений (работал на бэкенде). Во-первых, у серверного ПО более высокие требования к надежности, и использование проверенных временем библиотек всегда предпочтительнее, чем написание своего кода.
Во-вторых, у серверов практически нет ограничений на размер кода. Разработчик мобильного приложения старается впихнуть его в 10 мегабайт, десктопного приложения – в 100 мегабайт. А бэкенд-разработчик на Java может напихать в проект несколько десятков гигабайт библиотек и ему слова никто не скажет 🙂
Это, кстати, не шутка. Легко можно встретить бэкенд-проект из нескольких десятков модулей и с парой сотен библиотек. Вот только описывать (и изменять!) сценарии сборки таких проектов стало чрезвычайно трудно.
И тут появился Maven.
1.2 Знакомство с Maven
- Описание проекта;
- Сценарии сборки проектов;
- Зависимости между библиотеками.
Предшественником Maven’а был Ant, а наследником является Gradle. Но именно Maven развил и довел до совершенства три перечисленных стандарта, а также регламентировал их взаимодействие. Именно он вывел работу Java-сообществ на новый уровень. Давай же посмотрим на него подробнее.

Технически Maven – это специальная программа/сервис, основная цель которой управлять процессом сборки проектов. Ее можно просто скачать в виде архива и распаковать в любую директорию. Специальный установщик для этого не нужен.
Графического интерфейса у нее нет – все команды отдаются ей с помощью консоли. Чтобы еще более комфортно с ней работать, рекомендуется прописать в своей ОС специальные переменные окружения (environment variables).
Так же у Maven есть специальный репозиторий (директория/папка), где он хранит библиотеки, которые используются им при сборке проектов. Тебе нужно будет выбрать какую-нибудь папку на диске и назначить ее в качестве репозитория.
Еще из интересного можно отметить наличие глобального Maven-репозитория для всех библиотек, но об этом расскажем немного позже.
1.3 Загрузка и установка Maven
У Maven есть официальный сайт maven.apache.org. Там очень много документации по проекту, так что, если возникнут сложности или дополнительные вопросы – заходи, не стесняйся.
Также на странице downloads (https://maven.apache.org/download.cgi) можно скачать архив с maven (apache-maven-3.8.5-bin.zip). Распакованный архив займет где-то 10 Мб, хотя для локального maven репозитория со временем потребуется несколько сотен мегабайт памяти.
Maven написан на Java и требует JRE не ниже 7 версии, а также прописанные переменные окружения типа JAVA_HOME.
Просто создай на компьютере папку для Maven, например, d:\devtools , и распакуй в нее архив с Maven. В итоге у тебя должна получиться папка типа d:\devtools\maven\bin , где будут находиться основные бинарные файлы проекта.
1.4 Переменные окружения
После этого нужно добавить путь к папке bin из распакованного архива в переменную среды PATH.
Чтобы установить переменную среды (environment variable) в Windows 10, нужно перейти в Панель управления — Система — Дополнительные параметры системы. Затем нажать “Переменные среды”, найти PATH и выбрать “Изменить”, после чего добавить путь d:\devtools\maven\bin в конец строки. Обрати внимание, путь должен вести именно к папке bin.
В ОС на основе Unix переменную среды можно добавить консольной командной:
export PATH=/opt/apache-maven-3.8.5/bin:$PATH
Если ты все сделал правильно, то в консоли нужно набрать команду: «mvn -v». В ответ ты увидишь что-то типа:
C:\Users\Zapp>mvn -v Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 15:51:28+0200) Maven home: T:\apache-maven-3.0.5\bin\.. Java version: 1.8.0_65, vendor: Oracle Corporation Java home: C:\Program Files\Java\jdk1.8.0_65\jre Default locale: en_US, platform encoding: Cp1251 OS name: "windows 7", version: "6.1", arch: "amd64", family: "dos"
1.5 Локальный репозиторий Maven
Также ты можешь задать специальную папку, где Maven будет хранить jar-библиотеки, которые будет использовать при сборке проектов. Такую папку называют – локальный maven репозиторий.
Если такая папка не задана, то Maven создаст ее в домашней директории текущего пользователя. У меня это директория: C:\Users\Zapp\.m2
Папка имеет довольно специфическое имя “.m2”. Хотя пользователей Linux оно не пугает – там это довольно распространенный подход к именованию различных ”репозиториев” и/или любого другого хранилища служебной информации.
Важно! Не располагай Maven в системных папках, так как при работе ему понадобятся права на запись в эти папки, что может вызывать нездоровый интерес антивируса или операционной системы.
Maven до версии 3.5 требовал указать переменную окружения с именем M2_HOME, но теперь это не нужно.
Как установить Maven на Linux
Maven — фреймворк, который автоматизирует сборку проектов. Установить данный инструмент на машину Linux можно в несколько шагов. Для начала нужно поставить JDK — без него фреймворк не запустится.
Примечание: В этом мануале мы покажем, как установить Maven на сервер Ubuntu, однако описанные здесь действия подходят для его установки на любой дистрибутив Linux (конечно, с небольшими поправками).
Установка JDK на Linux
Как правило, для установки чего-либо в Ubuntu мы используем диспетчер пакетов apt. Но у него нет доступа к последним пакетам JDK. Текущая версия — Java 13, но команда
apt list -a | grep openjdk
показывает, что доступны только версии OpenJDK 8 и 11. Следовательно, лучше установить JDK, используя двоичные файлы и некоторые переменные среды.
1: Загрузка бинарных файлов JDK
Перейдите по этому URL-адресу: https://jdk.java.net/13/. Скопируйте ссылку для загрузки сборки Linux/x64. Затем используйте приведенную ниже команду, чтобы загрузить пакет и извлечь его.
$ wget https://download.java.net/java/GA/jdk13.0.1/cec27d702aa74d5a8630c65ae61e4305/9/GPL/openjdk-13.0.1_linux-x64_bin.tar.gz
$ tar -xvf openjdk-13.0.1_linux-x64_bin.tar.gz
$ mv jdk-13.0.1 /opt/
Мы переместили JDK в каталог /opt, но вы можете оставить его в любом месте файловой системы.
2: Установка переменных JAVA_HOME и PATH
Откройте файл .profile из домашнего каталога и добавьте в него следующие строки.
JAVA_HOME='/opt/jdk-13.0.1' PATH="$JAVA_HOME/bin:$PATH" export PATH
Чтобы применить изменения конфигурации, вы можете перезапустить терминал или выполнить команду:
3: Проверка установки Java
Вы можете запустить команду java -version, чтобы проверить установку JDK.
openjdk version "13.0.1" 2019-10-15 OpenJDK Runtime Environment (build 13.0.1+9) OpenJDK 64-Bit Server VM (build 13.0.1+9, mixed mode, sharing) $
Установка Maven
Установив и проверив JDK, мы можем переходить к установке Maven. В целом она состоит из таких же этапов.
1: Загрузка двоичных файлов Maven
Сначала нам нужны бинарные файлы фреймворка. Перейдите по URL-адресу: https://maven.apache.org/download.cgi. Скопируйте ссылку на файл по имени Binary tar.gz archive . Затем выполните следующие команды, чтобы загрузить и распаковать его.
$ wget https://mirrors.estointernet.in/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
$ tar -xvf apache-maven-3.6.3-bin.tar.gz
$ mv apache-maven-3.6.3 /opt/
2: Установка переменных M2_HOME и PATH
Поместите в файл .profile следующие строки:
M2_HOME='/opt/apache-maven-3.6.3' PATH="$M2_HOME/bin:$PATH" export PATH
Перезапустите терминал или запустите команду source .profile, чтобы применить изменения.
3: Тестирование установки Maven.
ЧТобы проверить нашу установку, давайте запросим версию фреймворка. Для этого выполните команду:
Команда должна выдать следующий результат.
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Maven home: /opt/apache-maven-3.6.3 Java version: 13.0.1, vendor: Oracle Corporation, runtime: /opt/jdk-13.0.1 Default locale: en, platform encoding: UTF-8 OS name: "linux", version: "4.15.0-47-generic", arch: "amd64", family: "unix" $
Заключение
Вы успешно установили фреймворк Maven в систему Linux. Теперь вы можете использовать его для построения и управления проектами, написанными на Java , C# , Ruby , Scala и других языках.
Как установить Maven на Mac OS
Maven — наиболее широко используемый инструмент управления сборкой и зависимостями проектов для приложений на основе Java. Установить Maven на Mac OS можно с помощью менеджера пакетов, такого как HomeBrew, или с помощью инструментов командной строки XCode. Но в этом туториале мы покажем, как установить Maven на Mac OS без применения какого-либо другого программного обеспечения. Поскольку для работы Maven требуется установка Java, мы начнем именно с этого шага.
1: Установка Java на Mac
Давайте установим OpenJDK на Mac OS. Это бесплатно, и вам не нужно беспокоиться о лицензировании, которое поставляется со сборкой Oracle JDK.
Загрузка Java для Mac OS
Перейдите на страницу последней версии JDK GA и загрузите tar-файл для Mac OS. Вот URL-адрес релиза Java 13 GA: https://jdk.java.net/13/ .
Затем извлеките его в любой каталог. Мы предпочитаем хранить JDK в каталоге /Library/Java/JavaVirtualMachines/.
$ tar -xvf openjdk-13.0.1_osx-x64_bin.tar.gz
$ sudo mv jdk-13.0.1.jdk /Library/Java/JavaVirtualMachines/
Установка переменных JAVA_HOME и PATH
Откройте файл .bash_profile и внесите в него следующие строки:
JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home" PATH="$/bin:$" export PATH
Вы можете перезапустить Терминал, чтобы применить эти изменения переменных среды. Также можно запустить команду source .bash_profile.
Тестирование установки JDK
Откройте Терминал и запустите команду:
Она должна показать следующий вывод.
openjdk version "13.0.1" 2019-10-15 OpenJDK Runtime Environment (build 13.0.1+9) OpenJDK 64-Bit Server VM (build 13.0.1+9, mixed mode, sharing) $
Однако вы также можете получить такое предупреждение:
“jdk-13.0.1.jdk” cannot be opened because the developer cannot be verified. macOS cannot verify that this app is free from malware.

Это значит, что вам нужно разрешить запуск приложения в настройках Security and Privacy .

После этого команда java будет работать нормально, и предупреждение больше не будет отображаться.
2: Установка Maven на Mac OS
Теперь, когда мы успешно установили JDK, мы может загрузить и установить Maven.
Загрузка Maven для Mac OS
Перейдите на сайт загрузки Maven: https://maven.apache.org/download.cgi . Загрузите файл Binary tar.gz archive , который отмечен на изображении ниже.

После загрузки извлеките его с помощью приведенной ниже команды.
$ tar -xvf apache-maven-3.6.3-bin.tar.gz
Бинарные файлы будут извлечены в каталог apache-maven-3.6.3. Вы можете хранить их где угодно, но мы сохраним их в каталоге Downloads для быстрого доступа.
Установка переменных M2_HOME и PATH
Следующим шагом является настройка переменных окружения для Maven — M2_HOME и PATH. Мы должны добавить его каталог bin в переменную Path. Откройте .bash_profile в своем любимом текстовом редакторе и добавьте в его конец следующие строки.
export M2_HOME="/Users/pankaj/Downloads/apache-maven-3.6.3" PATH="$/bin:$" export PATH
Чтобы обновить эти настройки, можете перезапустить терминал или использовать команду:
Тестирование установки Maven
Наконец, запросите версию фреймворка, чтобы проверить, успешно ли он установлен.
OpenJDK 64-Bit Server VM warning: Ignoring option MaxPermSize; support was removed in 8.0 Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Maven home: /Users/pankaj/Downloads/apache-maven-3.6.3 Java version: 13.0.1, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home Default locale: en_IN, platform encoding: UTF-8 OS name: "mac os x", version: "10.15.1", arch: "x86_64", family: "mac" $
Вывод показывает исходное расположение maven, используемую им версию JDK, а также сведения о версии Mac OS. Как видите, Maven успешно установлен на Mac OS. Теперь вы готовы создавать Java-проекты на основе maven.