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.
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.
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
Allerdings bin ich mir nicht sicher, ob das Ihre Frage beantwortet (was mir nicht ganz klar ist).
Tags und Links maven