Gibt es einen Befehl oder Mechanismus, der alle untergeordneten pom.xml
Dateien bearbeiten kann, so dass das übergeordnete relativePath
-Tag für alle untergeordneten Module bearbeitet oder eingefügt wird?Gibt es eine Möglichkeit, relativer Elternpfad mit mvn zu bearbeiten
Grundsätzlich habe ich ein Aggregat pom.xml
, und ein separates Elternteil pom.xml
. Der Aggregator sammelt eine Reihe von unabhängigen Git-Submodulen, die unabhängig voneinander veröffentlicht werden, die nicht über den Aggregator oder den relativen Speicherort des übergeordneten Elements informiert sind, und ich möchte eine Möglichkeit, die erforderlichen Änderungen automatisch so anzuwenden, dass sie dies tun.
aggregator/
- pom.xml
- @parent/
- pom.xml
- @module1/
- pom.xml
Die Module verweisen auf die freigegebenen Versionen des übergeordneten, aber ich will alles Umschalten auf -snapshot (versions:update-child-modules
behandelt dies gut), und am relativePath
der Mutter die Module zu zeigen.
Momentan bearbeite ich die Dateien, um <relativePath>../parent</relativePath>
in jedem Elternteil einzufügen.
Der Aggregator ist optional für die Projekte, da es lange nach der Tatsache kommt, so kann ich nicht wirklich die Hand bearbeiten Änderungen an dem Modul pom.xmls. Deshalb möchte ich einen dynamischen Mechanismus für Leute, die den Aggregator benutzen wollen.
Es mag sein, dass ich auf einen XML-Parser zurückgreifen muss, aber da ich auf halbem Weg bin, ohne das zu tun, wäre es schön, wenn es vermieden werden könnte.
Sie haben also eine Struktur, die Ihre Pom repräsentieren, die nicht von Ihnen Verzeichnisstruktur dargestellt wird. Außerdem verstehe ich den Teil über Ihren Aggregator nicht? Wenn Sie einen Elternteil für alle Kinder haben, dann fügen Sie diesen Elternteil in den Stamm Ihrer Struktur ein, der das Leben einfacher macht ... – khmarbaise
Die Module und der Elternteil existieren als eigenständige unabhängige Repos, die unabhängig voneinander veröffentlicht werden. Der Aggregator ist getrennt für eine bequeme Art, die ganze Welt zu sehen. – idij
Ich habe die Frage bearbeitet, um dies zu klären. – idij