Ho un'applicazione web che è strutturato in questo modo:WTP - M2E non distribuire le dipendenze transitive
A.jar -> B.war -> C.war
Sono utilizzando Eclipse Juno e la versione WTP è 1.1. A.jar è un progetto di utilità di lavoro che viene incluso da B.war. B.war è un progetto di guerra che è incluso da C.war come overlay. Ecco the way che sto facendo che:
<dependency>
<groupId>com.projects</groupId>
<artifactId>B</artifactId>
<version>1.0-SNAPSHOT</version>
<type>war</type>
<scope>runtime</scope>
</dependency>
Dopo di che, ho distribuire il progetto C al server Tomcat. Funziona come un incantesimo se distribuisco manualmente la guerra generata da Maven al Tomcat, perché A.jar è incluso in WEB-INF/lib. Tuttavia il mio problema arriva quando lascio il m2e-wtp fare la deploy, perché sta facendo l'overlay correttamente ma non includendo la dipendenza A transitive. Ho provato a includerlo come un pom, mentre leggo da qualche parte qui intorno, ma ho lo stesso risultato.
<dependency>
<groupId>com.projects</groupId>
<artifactId>B</artifactId>
<version>1.0-SNAPSHOT</version>
<type>war</type>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.projects</groupId>
<artifactId>B</artifactId>
<version>1.0-SNAPSHOT</version>
<type>pom</type>
</dependency>
sto utilizzando le versioni più recenti di M2E (1.2) e M2E-WTP (0.16) e hanno i miei progetti aggiornati con la configurazione Maven.
È un problema di m2e-wtp o semplicemente devo organizzare il mio progetto in altro modo?
a cura
ho notato configurazione M2E-WTP è memorizzato in project./settings/org.eclipse.wst.common.component di file di Eclipse. Ecco come appare per la mia guerra:
<dependent-module deploy-path="/"
handle="module:/overlay/prj/B?includes=**/**&excludes=META-INF/MANIFEST.MF">
<dependency-type>consumes</dependency-type>
</dependent-module>
<dependent-module deploy-path="/"
handle="module:/overlay/slf/?includes=**/**&excludes=META-INF/MANIFEST.MF">
<dependency-type>consumes</dependency-type>
</dependent-module>
Come posso vedere la dipendenza guerra è fissata per consumano mentre le dipendenze vaso sono impostati per uso.
Rilasciato m2e-wtp versione 0.17 non sembra risolverlo.
EDITED (2013-08-30)
Oggi ero di nuovo allo stesso problema. Anche io ho Ecepse kepler installato con il latest stable release of WTP fuori dalla scatola, questo problema sembra persistere. Ho pensato che fosse risolto, ma a quanto pare ho sbagliato controllo ...
Sì. Ancora visto il problema con m2e-wtp - Maven Integration per WTP (Incubation) versione 0.17.0.20130212. –