тег сховища під розподілом Управління проти сховищ?


88

Я бачу repositoryтег під батьківським елементом, тобто distributionManagementі repositories. Яка різниця ?

<distributionManagement>
    <repository>
        <id>...</id>
        <name>...</name>
        <url>...</url>
    </repository>
</distributionManagement> 

<repositories>
    <repository>
        <id>...</id>
        <name>...</name>
        <layout>default</layout>
        <url>...</url>
    </repository>
</repositories>

Моє розуміння repositoryелемента під distributionManagementелементом вказує, де він буде розгортати артефакти під час розгортання. Він з'явиться в картині лише під mvn deployчас часу розгортання, а не під mvn installчас часу побудови. Правда?

repositoryЕлемент під репозиторіями Елемент вказує, звідки потрібно підбирати залежності. Це з’явиться лише тоді, коли mvn installне буде mvn deploy. Правда?

Відповіді:


81

У вас це точно правильно!

З посилання на POM :

Де як repositoriesелемент вказує в POM місце і спосіб, яким Maven може завантажувати віддалені артефакти для використання поточним проектом, distributionManagementвказує, куди (і як) цей проект потрапить до віддаленого сховища при його розгортанні. Елементи сховища будуть використовуватися для розподілу знімків, якщо snapshotRepository не визначено.

  • Сховища, оголошені під distributionManagementелементом, будуть використовуватися для розгортання, тобто під час запуску mvn deploy.
  • repositoriesЕлемент буде використовуватися для завантаження залежностей проекту. Команда - це не обов’язково, mvn installале будь-яка команда, яка вимагає від Maven отримання артефактів із сховища.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.