Я щойно почав використовувати Maven, і мені сказали робити mvn install
в певному каталозі.
Що саме робить mvn install
?
Я думаю, що він шукає pom.xml
в поточній папці і починає слідувати інструкціям, вказаним у цьому файлі. Це правильно?
Я щойно почав використовувати Maven, і мені сказали робити mvn install
в певному каталозі.
Що саме робить mvn install
?
Я думаю, що він шукає pom.xml
в поточній папці і починає слідувати інструкціям, вказаним у цьому файлі. Це правильно?
Відповіді:
Як вам може бути відомо, Maven - це інструмент автоматизації побудови, який надає Apache, і це більше, ніж управління залежностями. Ми можемо зробити це у ролі Ant та Makefile, який завантажує всі необхідні залежності.
У режимі a mvn install
, воно обробляє дерево залежності залежно від конфігурації проекту pom.xml
для всіх підпроектів під супер pom.xml
(кореневим POM) та завантажує / компілює всі необхідні компоненти в каталозі, який називається .m2
в папці користувача. Ці залежності доведеться вирішити, щоб проект будувався без помилок, і mvn install
це одна з утиліт, яка могла б завантажити більшість залежностей.
Крім того, в Maven є інші утиліти, dependency:resolve
які можна використовувати окремо в будь-яких конкретних випадках. Життєвий цикл побудови mvn наведений нижче: Прив'язки LifeCycle
process-resources
compile
process-test-resources
test-compile
test
package
install
deploy
Тестову фазу цього mvn можна ігнорувати, використовуючи прапор -DskipTests=true
.
Чи переглядали ви будь-який із документів Maven, наприклад, Maven install docs ?
Версія горішкової оболонки: вона створить проект та встановить його у вашому локальному сховищі.
Він запустить усі цілі всіх налаштованих плагінів, пов’язаних з будь-якою фазою життєвого циклу за замовчуванням, аж до фази "встановлення":
https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Lifecycle_Reference
install:install
Мета забезпечується «Apache Maven Встановити плагін»:
Apache Maven встановіть плагін
Плагін Install використовується під час фази установки, щоб додати артефакт (и) до локального сховища. Встановити плагін використовує інформацію в POM (
groupId
,artifactId
,version
) , щоб визначити правильне місце для артефакту в локальному сховищі.Локальне сховище - це локальний кеш, де зберігаються всі артефакти, необхідні для складання. За замовчуванням він розташований у домашній директорії користувача (
~/.m2/repository
), але розташування може бути налаштовано за~/.m2/settings.xml
допомогою<localRepository>
елемента.
Сказавши це, точна мета:
install:install
використовується для автоматичного встановлення основного артефакту проекту (JAR, WAR або EAR), його POM та будь-яких доданих артефактів (джерел, javadoc тощо), створених певним проектом.
Для отримання додаткових відомостей про ціль, зверніться до сторінки Apache Maven Install Plugin - install: install .
Для отримання додаткової інформації про життєвий цикл побудови взагалі та про те, яке місце має ціль у життєвому циклі збірки, зверніться до сторінки Maven - Вступ до життєвого циклу побудови .
Коротка відповідь
mvn встановити
- додає всі артефакти (залежності), вказані в пом , до локального сховища (з віддалених джерел).
-DskipTests=true
це коротка форма -Dmaven.test.skip=true
Внесіть зміни у Setting.xml у папку .m2 . Ви можете скористатися посиланням на локальний репо, щоб баночки, які були завантажені знову, не можна було завантажувати знову і знову.
<url>file://C:/Users/admin/.m2/repository</url>
</repository>
mvn встановити основні завдання - 1) Завантажити залежності та 2) побудувати проект
в той час як робота 1 сьогодні опікується ідентифікаційними особами, такими як intellij (вони завантажують будь-яку залежність на POM)
mvn install в основному використовується для роботи 2 .