Repolode
apache

apache/maven-mvnd

Ускоритель сборок Maven: запускает сборки в постоянно работающих фоновых демонах, использует быстрый нативный клиент и собирает модули параллельно.

Звёзды
3,452
Форки
252
Открытые issues
94
Последний коммит
16 часов назад

Что это?

mvnd — это Maven Daemon, прямая замена команды mvn, призванная ускорить сборки Maven. Maven встроен в mvnd, поэтому отдельно устанавливать его не нужно. Сборки выполняются в постоянно работающей фоновой JVM, которая обрабатывает несколько запросов подряд. Загрузчики классов плагинов и JIT-компилированный код сохраняются между сборками, поэтому при повторных запусках не приходится перезапускать JVM и заново разбирать JAR-файлы плагинов.

Клиент — нативный исполняемый файл, собранный с помощью GraalVM: он запускается быстрее и потребляет меньше памяти, чем обычный запуск JVM. По умолчанию модули собираются параллельно, с использованием всех ядер CPU, кроме одного. В консоли состояние каждого потока сборки отображается на отдельной строке, а полный вывод Maven печатается после завершения сборки. Если свободного демона нет, одновременно могут работать несколько демонов.

Установить mvnd можно через SDKMAN!, Homebrew, MacPorts, aqua или вручную, скачав ZIP-архив. Для работы демона требуется Java 17 или новее. Нативные бинарные файлы доступны для ряда платформ Linux, macOS и Windows.

Ключевые возможности

  • 01Maven встроен, поэтому устанавливать его отдельно не нужно
  • 02Повторно использует постоянно работающую JVM между последовательными сборками
  • 03По умолчанию собирает модули параллельно, используя несколько ядер CPU
  • 04Предоставляет нативный клиент GraalVM, который быстрее запускается
  • 05Показывает состояние сборки в каждом потоке в упрощённом виде в консоли
  • 06Поддерживает те же параметры командной строки, что и mvn

Сценарии использования

  • Ускорение локальных сборок крупных многомодульных проектов Maven при разработке
  • Повторные сборки в CI или локально, когда время запуска JVM накапливается
  • Замена mvn в скриптах с сохранением того же синтаксиса команды

Быстрый старт

  1. 1

    Установите через SDKMAN!

    sdk install mvnd
  2. 2

    Или установите через Homebrew

    brew install mvndaemon/homebrew-mvnd/mvnd
  3. 3

    Запустите сборку с помощью mvnd в проекте Maven

    mvnd verify

Что важно знать

  • Для работы демона требуется Java 17 или новее.
  • На некоторых платформах доступен только Java-клиент, а не нативный клиент.

Темы

#maven#java#build-tool#build-acceleration#graalvm#daemon#apache-maven#build-management

Частые вопросы

Что такое maven-mvnd?
Ускоритель сборок Maven: запускает сборки в постоянно работающих фоновых демонах, использует быстрый нативный клиент и собирает модули параллельно. mvnd — это Maven Daemon, прямая замена команды mvn, призванная ускорить сборки Maven. Maven встроен в mvnd, поэтому отдельно устанавливать его не нужно. Сборки выполняются в постоянно работающей фоновой JVM, которая обрабатывает несколько запросов подряд. Загрузчики классов плагинов и JIT-компилированный код сохраняются между сборками, поэтому при повторных запусках не приходится перезапускать JVM и заново разбирать JAR-файлы плагинов.
maven-mvnd можно использовать бесплатно? Какая у него лицензия?
maven-mvnd распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
maven-mvnd всё ещё поддерживается?
Активно поддерживается. Последний коммит в maven-mvnd — 6 нояб. 2026 г..
Для чего можно использовать maven-mvnd?
Ускорение локальных сборок крупных многомодульных проектов Maven при разработке Повторные сборки в CI или локально, когда время запуска JVM накапливается Замена mvn в скриптах с сохранением того же синтаксиса команды
Как установить maven-mvnd?
Установите через SDKMAN!: sdk install mvnd Или установите через Homebrew: brew install mvndaemon/homebrew-mvnd/mvnd Запустите сборку с помощью mvnd в проекте Maven: mvnd verify
Где скачать maven-mvnd?
Исходный код и инструкции по установке — на GitHub: https://github.com/apache/maven-mvnd

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты