Как работает mvn install в Maven и его взаимодействие с pom.xml

Пройдите тест, узнайте какой профессии подходите

Я предпочитаю
0%
Работать самостоятельно и не зависеть от других
Работать в команде и рассчитывать на помощь коллег
Организовывать и контролировать процесс работы

Быстрый ответ

Команда mvn install занимается компиляцией исходного кода, проводит юнит-тесты, создаёт JAR/WAR-пакет и помещает его в локальный Maven-репозиторий. Для запуска этого процесса достаточно ввести:

Bash
Скопировать код
mvn install

С помощью этого механизма артефакты вашего проекта становятся доступны в виде зависимостей для других локальных Maven-проектов, не требуя обращения к удалённому репозиторию.

Кинга Идем в IT: пошаговый план для смены профессии

Анализ mvn install

Команда mvn install проходит все этапы сборки проекта вплоть до установки. Проект компилируется, упаковывается в JAR или иной формат, а затем помещается в локальный репозиторий Maven, обычно располагающийся в домашнем каталоге пользователя (.m2/repository). В таком положении его артефакты могут служить зависимостями для других локальных проектов.

Цикл сборки

Команда install проходит следующие фазы:

  1. validate – проверяет правильность проекта.
  2. compile – компилирует исходный код.
  3. test – тестирует скомпилированный код.
  4. package – создаёт пакет проекта.
  5. verify – проверяет результаты интеграционных тестов.
  6. install – располагает пакет в локальном репозитории.

Нужно пропустить тесты? Легко.

Для пропуска тестов используйте следующую команду:

Bash
Скопировать код
mvn install -DskipTests

А чтобы скомпилировать тесты, не выполняя их, воспользуйтесь:

Bash
Скопировать код
mvn install -Dmaven.test.skip=true

За рамками основ

Установка пути к локальному репозиторию

Можно указать другую директорию для локального репозитория, настроив settings.xml

Maven Install Plugin

Maven Install Plugin (install:install) копирует собранный артефакт, файл POM и все связанные с ними файлы в локальный репозиторий.

Поиск зависимостей в вебе

Если в локальном репозитории отсутствуют зависимости, Maven пытается загрузить их с удалённых серверов.

Доступ к артефактам

Артефакты, расположенные в локальном репозитории, доступны для использования в других проектах на этом же компьютере.

Отладка в Maven

Глубокое понимание команды mvn install поможет решить возникающие проблемы с сборкой или зависимостями.

Визуализация

mvn install можно представить как строительство автомагистрали:

Markdown
Скопировать код
1. Проект 🚧 (Поддержка сложной кодовой базы)
2. Сборка 🧹 (Процесс написания кода – строительство дороги)
3. Тестирование 📏 (Проверка соответствия нормам)
4. Упаковка 🧳 (Оформление дороги в итоговом виде, подготовка к эксплуатации)
5. Установка 🛣️ (Создание связей между разными путями)

mvn install – это работа эффективного дорожного укладчика:

Markdown
Скопировать код
Проект 🚧 -> Сборка 🧹 -> Тестирование 📏 -> Упаковка 🧳 -> Установка 🛣️
// 'mvn install' прокладывает дорогу (JAR), соединяя её с локальным репозиторием

mvn install – это создание нового участка дороги:

Markdown
Скопировать код
Последний шаг: Магистральные связи (Локальный репозиторий)
          🛣️🚙🚚🏍️
🔍🧳🛣️ -> Ваш кодовый путь официально открыт!
          (JAR готов к использованию)

Полезные материалы

  1. Maven – Maven в течение 5 минут – Быстрый гид по Apache Maven.
  2. Apache Maven Install Plugin – install:install – Подробная информация о команде maven install.
  3. Maven – Введение в жизненный цикл сборки — Описание жизненного цикла Maven.
  4. Apache Maven – Википедия — Статья о Maven на Википедии.
  5. Maven для начинающих – Объяснение фазы установкиВидеоурок о фазе установки на YouTube.