2017-10-18 2 views
1

ich ein Multimodul Maven Projekt haben, wie folgt:Maven (Multimodul-Projekt) - Kopieren Sie die Datei zwischen den Modulen

module: project-assembly; 
module: project-implementation; 
module: project-application; 
module: project-web; 

in der Projektorganisation/src/main/Montage/config i für wichtige Konfigurationsdateien haben meine Projekt, und ich brauche sie während des Build-Prozesses in Project-Web-Modul in WEB-INF-Ordner kopiert werden.

Wichtiger ist dies mit einem bestimmten Profil zu tun.

Wenn Sie zum Beispiel ein "x" Profil haben, ist dies derjenige, der diese Dateien benötigt, um das Projekt erfolgreich zu packen.

Gibt es einen Weg, dies zu erreichen? Dank

+0

Einfachste Lösung ist es, das Config-Verzeichnis in das Projekt-Web-Modul unter src/main/resources? – khmarbaise

Antwort

1

können Sie Maven Ressource verwenden plugin-

<properties> 
<othermodule-dir>...</othermodule-dir> 

</properties> 

<build> 
<resources> 
    <resource> 
     <!-- package thumbnail --> 
     <directory>${sourceDir}</directory> 
     <targetPath>${othermodule-dir}</targetPath> 
     <filtering>true</filtering> 
    </resource> 
    </resources> 
. 
. 
</build> 
+0

Danke für die Antwort, was ist mit der Profileinstellung benötigt? – Lazarus

+0

das kann auch im Profil eingetragen werden – awd

1

Sie können die Maven-antrun-Plugin verwenden, um Dateien zwischen beliebigen Ordner (ant Kopie) zu kopieren. Ich rate jedoch dringend davon ab, zwischen Modulen zu kopieren. Es ist verwirrend und noch mehr: Die Erstellungsreihenfolge oder die Teilmenge der Module, die erstellt werden, können sich ändern (abhängig von den Abhängigkeiten und auch den Befehlszeilenparametern). Für dieses Kopieren müssen Sie sicherstellen, dass der Build in einer definierten Reihenfolge stattfindet.

Denken Sie darüber nach, die Konfiguration auf andere Weise zu teilen.

+0

Leider darf ich diese Struktur nicht ändern ... Können Sie mir bitte ein Beispiel geben? – Lazarus

Verwandte Themen