Wie schließe ich Konfigurationsdateien mit Maven Appassembler ein?

8

Ich verwende das Maven Appassembler Plugin, um meine Anwendung zu paketieren. Ich möchte einige Konfigurationsdateien mit der Anwendung verpacken. Ich habe das configurationDirectory und includeConfigurationDirectoryInClasspath Parameter, aber ich habe nicht gefunden, wie ich erstellen (und füllen) sollte das Konfigurationsverzeichnis. Ich habe versucht, die Dateien in src/main/resources zu setzen, aber das bringt sie einfach in die JAR-Datei für mein Projekt.

Was ist der "richtige" Weg, dies zu tun, mit Maven?

    
Sietse 18.01.2010, 09:04
quelle

5 Antworten

7

Leider ist dies eine Einschränkung des Appassembler-Plugins in der aktuellen Release-Version. Normalerweise wird das Plugin in Verbindung mit dem Assembly-Plugin verwendet, um das endgültige Artefakt zu erzeugen, in das Sie den Verweis auf Ihr Konfigurationsverzeichnis aufnehmen können. Wenn Sie jedoch eine funktionale Struktur nur mit dem Appassembler-Plugin haben möchten, müssen Sie die Dateien manuell kopieren. Ein Beispiel mit dem antrun-Plugin mit einem src/main/conf -Verzeichnis finden Sie hier: Ссылка

    
Brett Porter 18.01.2010, 20:57
quelle
1

Standardmäßig verwendet das Plugin das Verzeichnis src/main/config .

Es ist möglich, die Quelle für die Konfigurationsdateien mit dem Parameter <configurationSourceDirectory>src/main/config</configurationSourceDirectory>

zu ändern     
jassuncao 03.01.2011 18:37
quelle
1

Wenn ich die copyConfigurationDirectory-Eigenschaft einschließe, kopiert sie die Konfigurationsdateien und bündelt sie ordnungsgemäß.

%Vor%

Ich habe jedoch ein anderes Problem. Ich möchte meine Konfigurationsdateien vor dem Kopieren filtern, was mir einige Probleme bereitet.

    
jon077 15.01.2011 04:02
quelle
0

Abgesehen davon werden die Bin-Skripte für verschiedene Plattformen nicht generiert. Das maven-assembly-plugin kann (package (s) {tar.gz, zip}) erstellen zur Verteilung. Diese werden über eine assemble.xml konfiguriert. Sie geben an, welche Dateien (mit welchen Optionen (chmod)) usw. eintreffen. Sie können auch Dateien filtern (Werte in ihnen suchen / ersetzen). usw.

    
Verhagen 15.02.2010 19:41
quelle
0

Jahre später und in Version 1.10 des Plugins gibt es jetzt eine preAssembleDirectory Konfigurationsoption. Leider finde ich es nicht flexibel genug für meine Bedürfnisse, da es direkt in assembleDirectory kopiert und nicht erlaubt, einen Zielverzeichnispfad innerhalb von assemblyDirectory anzugeben.

    
wytten 05.04.2017 13:14
quelle