Ich habe derzeit zwei Montage Deskriptoren mit zwei Ausführungen für mein Projekt, die Verteilungen des Projektes für zwei verschiedene Gruppen erzeugt:Wie schließe ich Maven-Assembly-Ausführungsspezifische Ausdrücke in eine Assembly-Deskriptordatei ein?
<!-- Client distribution -->
<execution>
<id>client</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>src/main/assembly/dist-client.xml</descriptor>
</descriptors>
</configuration>
</execution>
<!-- Developer distribution -->
<execution>
<id>developer</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>src/main/assembly/dist-developer.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
Das bedeutet, dass ich zwei Sätze von Deskriptoren zu pflegen, Shell-Skripten usw., die ich will zu vermeiden, aber ich finde keinen Weg, einen Ausdruck zu erhalten, der Ausführungs-ID oder einen anderen Konfigurationsparameter enthält, der für die Ausführung eindeutig ist.
Ich würde davon ausgehen, dass, wenn der Ausdruck für die Assembly sichtbar ist, das Plugin es auch in meine Shell-Scripts einfügen kann, um den Build in einem Dist-Assembly-Deskriptor mit zwei Ausführungen zu konsolidieren.
Kann jemand einen besseren Ansatz vorschlagen?
Haben Sie sich die Filterung angesehen? http://maven.apache.org/plugins/maven-assembly-plugin/examples/single/filtering-some-distribution-files.html mit diesem können Sie verschiedene Eigenschaftendateien in den verschiedenen Ausführungen konfigurieren ... (Werfen Sie einen Blick hier: https://github.com/khmarbaise/CIEnv/tree/master/hudson/cienv-proxy kann das helfen.) – khmarbaise
Ich benutze Filter, um im verteilbaren Jar-Dateinamen zu ersetzen, und sie sind definitiv ein Teil von die Lösung, aber ich brauche auch den endgültigen Dateinamen, die Ziel-Shell-Skript-Namen usw., um die Ausführung zu repräsentieren. Zum Beispiel 'myclientapp' vs 'mydevapp'. Es ist eine Befehlszeilen-App und ich zeige verschiedene verfügbare Aktionen abhängig von der Art der Verteilung an einen Systemparameter übergeben. –