как такие вещи, как maven-cli-plugin / mvnsh ускоряют сборку maven? - PullRequest
1 голос
/ 16 августа 2010

извините за глупость, но я не смог понять, почему эти инструменты могут ускорить сборку. Например,

(если я правильно понимаю), maven-cli требует, чтобы вы выполнили сборку один раз:очистите, скомпилируйте, установите, затем он ускоряет сборку, кэшируя фразу clean и compile, так что вы можете выполнять фразу установки только снова и снова.

, на мой взгляд, это не ускоряет процесспроходя полный цикл снова и снова.однако, на самом деле, если я делаю изменения в коде, не следует ли мне всегда перекомпилировать мой код перед запуском установки?в таком случае, как скорость становится быстрее?чистая фраза может быть быстрее, но для моего проекта из 100ish-модулей чистка в любом случае занимает всего лишь 5 секунд.

, так что меня совершенно не понимают эти инструменты?можете мне как-то объяснить, как эти инструменты могут вообще улучшить скорость?спасибо.

mvnsh: http://shell.sonatype.org/faq.html

mvn-cli-plugin: http://wiki.github.com/mrdon/maven-cli-plugin/

1 Ответ

2 голосов
/ 17 августа 2010

Короче говоря, идея этих инструментов не в том, чтобы пропустить фазы, а в том, чтобы избежать затрат на инициализацию JVM, движка Maven, плагинов и т. Д. При каждой сборке, кэшируя их в готовом (пере) использовать среду.

Это довольно хорошо обобщено (возможно, лучше, чем в FAQ) в этом Вступлении к Maven Shell сообщение в блоге:

Sonatype выпустил отличную утилиту называется Maven Shell, который позволяет разработчики выполнить Maven цели / фазы в предварительно загруженной оболочке окружающая среда, значительно сокращая время сборки. Это делает это загрузка JVM, Maven и любой загружен плагин один раз и использует это существующая нагрузка для каждого последующего строить . Я скачал .10 бинарный и поиграл с ним с очень простой многомодульный проект. Вот быстрый учебник по некоторым вещам, которые вы можно ожидать от Maven Shell.

В этом же блоге представлены некоторые метрики, иллюстрирующие улучшения простой сборки.

Лично мне просто нравится Maven Shell, это действительно отличный инструмент, и я настоятельно рекомендую его любому пользователю Maven.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...