2010-06-02 9 views
7

Tengo un proyecto administrado por maven con algunos módulos. Un módulo contiene algunos códigos nativos dentro del directorio "src/main/resources/native". El segundo módulo empaqueta todos los módulos relacionados a un archivo WAR.¿Cómo copiar recursos de otro módulo a una ubicación específica? (maven)

Aquí viene la pregunta: ¿Cómo copiar el directorio "native /" (y sus subdirectorios) en el primer módulo al directorio WEB-INF/native en el segundo módulo?

Encontré un complemento copy resources, pero parece que no es lo que quiero. (Copia el directorio dentro del mismo módulo, pero quiero una copia de módulos cruzados)

Respuesta

8

Esto es factible con dependency:unpack (que se uniría en la fase prepare-package) y el excludes/includes apropiado. Vea el ejemplo Unpacking specific artifacts.

+0

¡Gracias! Y ... También encontré que el directorio recursivo debería escribirse: " native /**\/*.*" ... demasiado engorroso ... – smallufo

4

El objetivo de los módulos en maven es diferenciarlos entre sí. Me temo que no habrá una solución satisfactoria dentro de maven, ya que va contra el grano.

Una solución podría ser crear un archivo de guerra con sus recursos y depender de eso para construir su guerra final.

que uso para un proyecto, por ejemplo, los recursos de camellos en la web mediante la adición de una dependencia:

<dependency> 
     <groupId>org.apache.camel</groupId> 
     <artifactId>camel-web</artifactId> 
     <version>${camel.version}</version> 
     <type>war</type> 
     <scope>runtime</scope> 
    </dependency> 

Los recursos de guerra se fusionan con mis recursos web.

+0

+1 para superposiciones de guerra. – whaley

Cuestiones relacionadas