Frage

Ich habe ein offenes Ohr-Datei mit einer WAR-Datei innerhalb produziert, aber das Ohr Datei enthält JAR-Dateien, die bereits im Ordner lib der WAR-Datei sind. Wie kann ich die doppelten JAR-Dateien entfernen und wo sollten diese JAR-Dateien? In den Ordner lib Kriegs Datei oder außerhalb der WAR-Datei? (Ich bin mit maven Ohr-Plugin und Maven Plugin Krieg in meinem Projekt).

War es hilfreich?

Lösung

Ich fand heraus, endlich einen Weg, dies zu tun, indem dünne Krieg Dateien innerhalb eines Ohrs Datei zu erzeugen. Ich wurde hier von Maven-Krieg-Plugin Beispiel inspiriert dünn-Kriege

Sie den Anweisungen des Beispiels Gefolgt, zog ich alle JAR-Dateien aus dem Krieg Modul und steckte es in einen Ordner lib im Ohr-Datei.

So ist die letzte Ohr Dateistruktur wird sein:

  ear-app
   -- lib (all the jar files will be here)
   -- webModule1
      -- lib (empty)
   -- webModule2
      -- lib (empty)
   -- ejbModule

Andere Tipps

Wenn Sie Gläser, die durch beide verwendet werden, das EJB-Archiv und das Webarchiv, dann können Sie Folgendes tun:

  1. halten alle die gemeinsamen Gefäße an der Wurzel der .ear
  2. verwenden, um das Class-Path Attribut des manifest.mf in der ejb und Web-Archiven auf diese JAR-Dateien zu verweisen. Denken Sie daran, dass die Lage der Gläser wird an die Wurzel des Ohres Datei relativ sein.

Auch wenn Sie nicht über ein EJB jar haben, werden die obigen Schritte funktionieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top