2010-12-15 13 views
10

Witam Mam pom.xml nadrzędny jak poniżej .., powiedzmy, że mam 4 moduły obecnie .. Ale w pewnych momentach mogę nie mieć wszystkich 4 modułów przez cały czas .. Czy istnieje sposób, aby te moduły (projekty podrzędne) opcjonalne w katalogu głównym pom.xml. Co oznacza, że ​​projekt potomny nie będzie obecny w jednym oddziale, ale będzie obecny w innej gałęzi .. Nie chcę używać wielu root pom.xml do dla różnych gałęzi .. Czy to możliwe?Moduły Maven opcjonalne w pom.xml

<project> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.xx.xx.correspondence</groupId> 
    <artifactId>xxHudsonTP</artifactId> 
    <version>1</version> 
    <packaging>pom</packaging> 

    <modules> 
    <module>xxCastor</module> 
    <module>cxxYYYCastor</module> 
    <module>xxCommon</module> 
    <module>xxxx</module>  
    </modules> 
</project> 
+0

nie dostać, moduł projektu jest w nieuniknioną częścią, jaki jesteś czyniąc opcjonalnym –

+0

Afaik można zdefiniować zależność jako opcjonalną podczas definiowania zależności w odwoływaniu do modułu – lisak

+0

Mam 2 różne gałęzie programistyczne. Z tego jeden oddział ma nowo dodany moduł (projekt Dziecko), a inny deweloper. gałąź nie ma tego modułu (nowy projekt potomny nie jest obecny). Tak więc w jednym oddziale muszę dodać ten nowo dodany moduł do głównego pom.xml iw innej gałęzi nie muszę dodawać nowo dodanego modułu potomnego. Moje pytanie brzmi: Czy mogę uczynić te moduły częścią pom.xml do dowolnego opcjonalnego słowa, jeśli katalog projektu podrzędnego nie jest obecny, to pomija i dalej stosuje cele dla następnych modułów. – srinannapa

Odpowiedz

10

Można użyć profili, tak jak zrobili to na przykład w flex-Mojos projektu plugin:

... 
<profiles> 

    <profile> 
     <id>minimal</id> 
     <modules> 
     <module>flexmojos-parent</module> 
     <module>flexmojos-sandbox</module> 
     <module>flexmojos-generator</module> 
     <module>flexmojos-maven-plugin</module> 
     <module>flexmojos-super-poms</module>   
     <module>flexmojos-testing</module>   
     </modules> 
    </profile> 

    <profile> 
     <id>release</id> 
     <modules> 
     <module>flexmojos-parent</module> 
     <module>flexmojos-sandbox</module> 
     <module>flexmojos-generator</module> 
     <module>flexmojos-maven-plugin</module> 
     <module>flexmojos-super-poms</module> 
     <module>flexmojos-archetypes</module> 
     <module>flexmojos-testing</module> 
     </modules> 
    </profile> 

<profiles> 
+3

maven.test.skip = true sprawia, że ​​jestem smutny – mhaller

+0

@mhaller To nie był temat - ale usunąłem go, aby cię uszczęśliwić ;-) – Ralph

+0

@mhaller:? o czym mówisz: – srinannapa

Powiązane problemy