30 Haziran 2019 Pazar

maven Parent pom.xml

Giriş
Projenin yapısı şöyle olsun.
Parent Module
|
|---Child Module A
       |
       |--pom.xml (a.jar)
|---Child Module B
       |
       |--pom.xml (b.jar)
|pom.xml
A ve B projelerinin ortak kullandıkları şeyleri parent projedeki pom.xml'e koyarız. Şöyle yaparız.
Ortak Nexus ayarları
<distributionManagement>...</distributionManagement>

Ortak Svn ayarları
<scm>...</scm>

Ortak değerler
<properties>...</properties>

Ortak Pluginler
<build>...</build>

Ortak jarlar
<dependencyManagement>...</dependencyManagement>
Bazen de aggreate pom yapılmak istenirse
<modules>...</modules>
eklenir.

DependencyManagement Nedir?
Açıklaması şöyle.
A very important use of the dependency management section is to control, consolidate, and centralize the versions of artifacts used in dependencies and inherited by all children.
Conflict Resolution
Açıklaması şöyle. Parent pom'a yazılan jar'lar ilk olarak tercih edilir.
So, there are multiple ways of deciding the versions, which means there is an order of precedence.

1. Versions provided in the direct declaration in POM take the highest precedence.
2. Version provided in parent pom takes second precedence.
3. Version from imported pom takes third place
4. Lastly, whatever we get from dependency mediation


Hiç yorum yok:

Yorum Gönder