Baue ein einzelnes Modul aus dem Multimodul Pom

8

Ist es möglich zu tun?

Die Umgebung: Multimodul pom besteht aus 3 Modulen: mm1, mm2, mm3. Modul mm2 hat mm1 als Abhängigkeit. Es ist möglich, Elternpom ohne Fehler zu erstellen.

Die Frage: Ist es möglich, ein einzelnes Modul mm2 zu erstellen (d. h. maven aus dem Basisverzeichnis mm2 auszuführen), ohne mm1 in das lokale Repository zu installieren?

Danke.

    
igorp1024 23.10.2009, 11:35
quelle

3 Antworten

3

Ohne automatische Installation nicht, aber es ist möglich, nur ausgewählte Projekte zu erstellen. Sie müssen Multi-Modul-Build haben (ich nehme an, Sie tun). Im Reaktormodus muss jeder Befehl von der Wurzel des Reaktors ausgeführt werden.

Also in deinem Fall:

mvn reactor:make -Dmake.folders=mm2

In diesem Fall bauen Sie mm2-Module und Module auf, von denen es abhängt (mm1).

Nützliche Links:

Aus Buchbeispielen baue ich nur das Projekt persist und sein Abhängigkeitsprojektmodell. Andere Projekte sind unberührt mit mvn reactor:make -Dmake.folders=sample-persist

alt text http://www.sonatype.com/books /maven-book/reference/figs/web/running_aro-dependencies.png

Ein anderer nützlicher Befehl ist reactor:make-dependents , der Projekte erstellt, die von X abhängen.

    
cetnar 23.10.2009, 18:03
quelle
14

Ich bin nicht sicher, was Sie genau meinen, "ohne mm1 in das lokale Repository zu installieren". Meinst du vorher mm2 oder nie bauen?

Im Zweifel vielleicht eine der neuen Build-Optionen, die in den Maven Tipps und Tricks: Advanced Reactor Optionen Blogpost kann helfen:

  

Beginnend mit der Veröffentlichung von Maven 2.1   Es gibt neue Maven-Befehlszeile   Optionen, mit denen Sie manipulieren können   die Art, wie Maven bauen wird   Multimodul-Projekte. Diese neuen   Optionen sind:

%Vor%

Ich habe speziell an die Optionen -pl und -am gedacht. Führen Sie Folgendes aus dem Stammverzeichnis

aus, um eine Teilmenge der Module zu erstellen %Vor%

Allerdings bin ich mir nicht sicher, ob das Ihre Frage beantwortet (was mir nicht ganz klar ist).

    
Pascal Thivent 23.10.2009 12:39
quelle
0

Dies widerspricht dem Prinzip der Abhängigkeiten von Maven2. Was ist das Interesse, genau das zu tun?

Wir können uns jedoch vorstellen, die mm1-Abhängigkeit von mm2 als system -Abhängigkeit zu definieren:

%Vor%     
romaintaz 23.10.2009 12:06
quelle

Tags und Links