Maven-Profil für einzelnes Modul

8

Ich habe ein Multi-Modul Maven-Projekt, das erfolgreich baut, ich möchte nur eines der Module bauen, die ich habe. Wie würde ich das mit Profilen machen? Ich könnte es von der Konsole auf zwei Arten tun, eine Möglichkeit ist das Kind-Modul und mvn package oder ich könnte Reaktor verwenden, um nur ein Modul zu bauen.

Kann ich dasselbe mit Profilen machen? Durch Ändern von POM? Danke

BEARBEITEN

Wenn POM unmöglich ist, kann ich das mit settings.xml machen?

    
ant 08.03.2010, 11:41
quelle

1 Antwort

13

Um dies mit Profilen zu implementieren, können Sie zwei Profile verwenden, ein <activeByDefault> mit allen Modulen und ein anderes mit dem gewünschten Modul. Etwas wie das:

%Vor%

Und dann nenne es so:

%Vor%

Zwei Dinge, die hier zu beachten sind:

  1. Sie müssen die <modules> aus dem POM in einem "Standard" -Profil verschieben (weil <modules> von einem Profil nur additiv sind, sie verstecken die im POM deklarierten Module nicht).
  2. Wenn Sie es als <activeByDefault> markieren, wird das "Standard" -Profil ausgewählt, wenn nichts anderes aktiv ist, aber deaktiviert, wenn etwas anderes ist.

Man könnte sogar den Namen des Moduls parametrisieren und als Eigenschaft übergeben:

%Vor%

Und rufe Maven so auf:

%Vor%

Aber das ist eine schlechte Implementierung IMHO, ich bevorzuge die -pl "erweiterte" Reaktoroptionen (weniger xml, viel mehr Leistung und Flexibilität):

%Vor%     
Pascal Thivent 08.03.2010, 13:14
quelle

Tags und Links