Domanda

Ho prodotto un file di orecchio con un file di guerra dentro ma il file ear contiene i file jar che sono già nella cartella lib del file guerra. Come posso rimuovere i file jar duplicati e dove quei file jar dovrei essere? Nella cartella lib del file guerra o al di fuori del file di guerra? (Sto usando plug-orecchio Maven e plugin di guerra Maven nel mio progetto).

È stato utile?

Soluzione

Alla fine ho trovato un modo per fare questo con la produzione di file WAR magro all'interno di un file ear. Sono stato ispirato dall'esempio Maven-guerra-plug da qui skinny-guerre

seguito le istruzioni della esempio, ho spostato tutti i file jar dal modulo guerra e metterlo in una cartella lib all'interno di file ear.

Quindi, la struttura di file ear finale sarà:

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

Altri suggerimenti

Se si dispone di vasi che vengono utilizzati da entrambi, l'archivio EJB e l'archivio web, allora si può fare quanto segue:

  1. mantenere tutti i barattoli comuni alla radice del .ear
  2. utilizzare l'attributo Class-Path del manifest.mf negli archivi EJB e di Internet per fare riferimento a questi file jar. Si ricorda che la posizione dei vasi sarà relativo alla radice del file ear.

Anche se non si dispone di un vaso EJB, i passaggi precedenti funzioneranno.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top