tag do repositório em DistributionManagement vs repositories?

88

Vejo a repositorytag sob o elemento pai ie distributionManagemente repositories. Qual é a diferença ?

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

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

Meu repositoryelemento de compreensão em distributionManagementelemento especifica onde irá implantar os artefatos no momento da implantação. Ele entrará em cena apenas durante o mvn deploytempo de implantação, não durante o mvn installtempo de construção. Direito?

repositoryelement under repositories element especifica de onde as dependências precisam ser obtidas. Ele entrará em cena apenas enquanto mvn installnão durante mvn deploy. Direito?

emilly
fonte

Respostas:

81

Você acertou exatamente!

Da referência do POM :

Onde, conforme o repositorieselemento especifica no POM, o local e a maneira como o Maven pode baixar artefatos remotos para uso pelo projeto atual, distributionManagementespecifica onde (e como) esse projeto chegará a um repositório remoto quando for implementado. Os elementos do repositório serão usados ​​para distribuição de instantâneo se o snapshotRepository não estiver definido.

  • Repositórios declarados sob o distributionManagementelemento serão usados ​​para implantação, ou seja, quando em execução mvn deploy.
  • O repositorieselemento será usado para baixar dependências do projeto. O comando não é necessariamente, mvn installmas qualquer comando que requer que o Maven busque artefatos de um repositório.
Tunaki
fonte