Nur modifizierte Dateien in maven-war-plugin kopieren

9

Ich benutze gerade maven 3.x mit dem maven-war-plugin. Für Entwickler-Builds möchte ich das Ziel "war: exploded" verwenden, aber nur Ressourcen kopieren, die sich geändert haben. Gibt es eine Möglichkeit, dies zu tun?

Ich habe die Dokumente durchgesehen und konnte in den aktuellen Versionen keinen Weg finden, dies zu tun, aber es gab (in der alten maven Version 1.x) eine Eigenschaft maven.war.resources .Overwrite, das würde dies ermöglichen.

Danke.

    
davija 01.04.2011, 18:22
quelle

2 Antworten

1

Ich kenne keine Möglichkeit, dies mit dem maven-war-plugin zu tun, aber wenn Ihre IDE dies unterstützt, könnten Sie die IDE veranlassen, Änderungen automatisch vorzunehmen. Zum Beispiel unterstützt die Webtools-Plattform für Eclipse diese Funktion für Tomcat . Wenn Ihr Build-Prozess jedoch komplex ist oder etwas seltsames vor dem Aufruf des maven-war-plugins tut, funktioniert dies möglicherweise nicht für Sie.

Eine zweite Option: Wenn Sie Linux ausführen, richten Sie rsync ein, um kürzlich geänderte Dateien in Ihren Servlet-Container zu kopieren. Ein Mitarbeiter hat dies getan, indem er das Web-App-Verzeichnis des Servlet-Containers mit dem Ausgabeverzeichnis des Eclipse-Projekts synchronisiert hat, und es hat gut funktioniert (ändern Sie einfach Ihren Code, Eclipse erstellt ihn automatisch und rsync kopiert Ihre Änderungen).

    
Dave 24.05.2011 04:19
quelle
0

Zu diesem Zweck benutze ich maven-antrun-plugin

Beispiel:

%Vor%

Dann renne maven mit params: mvn pom.xml kompilieren install org.apache.maven.plugins: maven-war-plugin: 2.1-alpha-1: explodiert

Als Ergebnis werden nur geänderte Dateien neu kompiliert und nur neu kompilierte Dateien werden in tomcat webapp dir.

ersetzt     
Oleksandr_DJ 14.12.2012 12:09
quelle

Tags und Links