2009-07-16 9 views
1

Ich schreibe eine Anwendung, die Geoserver mit einer benutzerdefinierten Komponente integriert, die auf einer einzigen Servlet-Engine gehostet werden soll. Beides sind Maven-basierte Projekte, und ich würde gerne in Maven Land bleiben, um alles in eine schöne verteilbare zu verpacken. Die allgemeine Idee, die ich habe, besteht darin, meiner Anwendung ein weiteres Modul hinzuzufügen, das die Anwendung selbst, Geoserver und alle Abhängigkeiten in ein nettes Archiv packt.Wie verpacke ich mehrere WAR-Dateien in einem Maven-Projekt?

Ich kenne das Maven-Assembly-Plugin und seine Fähigkeit, alle Abhängigkeiten in einem Zielordner zu speichern, aber ich bin mir nicht sicher, was wäre der beste Weg, um ein Paket zu erstellen, das einfach zu implementieren ist. Googlen für jedes Beispiel war nicht erfolgreich.

Zusätzliche Bonuspunkte, wenn das Modul über mvn jetty:run gestartet werden kann.

+0

Warum sind Sie sich des Assembly-Plugins nicht sicher? Dies scheint die beste Wette zu sein. – javamonkey79

Antwort

0

Haben Sie in Betracht gezogen, diese in ein EAR Projekt zu verpacken? Es enthält eine Reihe von WARs (und JARs) und ermöglicht Ihnen, einen Implementierungsdeskriptor anzugeben oder zu generieren.

+1

Sie könnten jboss: deploy verwenden, um den gleichen Effekt wie anta zu erhalten: run – sal

+0

@sal, ist es genau das gleiche? Ich dachte, jboss: deploy paketiert das Ohr für die Lieferung an einen bestehenden JBoss-Server über JMX, während antight: run eine eingebettete Jetty-Instanz mit dem aktuellen Projekt ausführt. –

+1

@sal: Das Schöne an Jetty: run ist, dass Sie eine Anwendung starten können, ohne auf eine externe Serverkomponente angewiesen zu sein. Dies bedeutet keine zusätzlichen Bereitstellungsprobleme und keine Verwaltung von Zugriffsrechten, was z.B. für Funktionstests (sowohl manuell als auch automatisiert). –

Verwandte Themen