Frage

Tor

Multimodule Maven Release mit Tags pro Modul

Lage

Nehmen Sie die folgende Projektstruktur für ein auf Maven basierender Java-Projekt an:

xx-parent
xx-moduleA
xx-moduleB
xx-moduleC/submodule1
xx-moduleC/submodule2
xx-moduleC/submodule3

Die Projektstruktur in der Subversion ist wie folgt:

xx-parent/trunk
xx-moduleA/trunk
xx-moduleB/trunk
xx-moduleC/trunk/submodule1
xx-moduleC/trunk/submodule2
xx-moduleC/trunk/submodule3

Mein Ziel ist es, Tags pro Modul bei der Ausführung einer Veröffentlichung zu erstellen:

xx-parent/tags/xx-parent-1.0
xx-moduleA/tags/xx-moduleA-1.0
xx-moduleB/tags/xx-moduleB-1.0
xx-moduleC/tags/xx-moduleC-1.0

In der Vergangenheit wurde jedes Modul separat gebaut und freigegeben. Als das Projekt größer wurde (30 Module), nahm die Zeit für den Aufbau einer Veröffentlichung zu. Ich möchte das Projekt in ein Multi-Modul-Einrichten ändern, um einen Reaktorbau und eine Veröffentlichung durchzuführen. Das Gebäude scheint kein Problem zu sein, aber das Erstellen von Tags pro Modul ist.

Das Maven-Release-Plugin scheint darauf zu bestehen, nur ein einzelnes Tag für das gesamte Projekt/die gesamte Version zu machen. Ich suche nach einer Möglichkeit, mehrere Tags zu erstellen, z. B. ein Tag pro Modul.

Was ich bisher versucht habe

  • Erstellen eines XX-All-Subversion-Alias, der alle Submodules überprüft <module>../xx-moduleB</module>
  • Aktivieren CommitByProject, die sich pro Modul engagierte, aber nicht modul. Sehen
  • Jedes Modul hat seine eigene <scm> Elemente in der pom.xml, aber sie werden bei der Durchführung einer Reaktorfreisetzung nicht verwendet.
  • mvn --batch-mode -DcommitPerProject=true -DautoVersionSubmodules=true -Drelease.version=1.0.6 release:prepare release:perform

Probleme

  • Maven-Release-Plugin erstellt kein SVN-Tag pro Modul
  • Maven-Release-Plugin überschreibt das <scm> Tag mit ungültigen URLs, z. B. verschachtelten "Trunk" -Tags unter dem XX-Eltern-Tag

Frage

Wie kann ich dieses Projekt mit einem Maven-Release-Prozess, einem Multi-Modul-Layout, einrichten und dennoch separate Tags pro Modul erhalten?

Verweise

http://jira.codeehaus.org/browse/mrelease-261 (Geschlossen) und mrelease-561 (offen)

War es hilfreich?

Lösung

Nach Arnaud Héritier (ein Apache -Maven -PMC -Mitglied),
Maven kann Verbundanwendungen wie Modul-A V0.1, Modul-B v0.3 nicht verarbeiten.
Maven betrachtet ein Projekt und alle seine Submodules als ein einzigartiges Set.

sehen: http://blog.aheritier.net/maven-release-plugin-2-0/ (9. Juni 2010)

Vielleicht hat sich die Situation seitdem mit Maven 3 geändert?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top