2012-01-12 20 views
5

Soy nuevo en Maven y m2e. Me frustra que tenga que hacer esta pregunta, pero la escasa documentación de m2e y Google me están fallando.¿Cómo creo un JAR con m2e (m2eclipse)?

¿Cómo se consigue m2e para construir un JAR? Entiendo que esto debería suceder durante la fase del paquete maven, pero m2e no parece hacer esto como parte del proceso de compilación y no puedo encontrar una forma de ejecutar explícitamente la fase del paquete en Eclipse (ni ninguna otra fase que no esté incluida). parte de la compilación predeterminada).

Gracias.

Respuesta

10

Como siempre y cuando tenga su archivo pom.xml con los siguientes parámetros:

<modelVersion>[a model number eg 4.0.0]</modelVersion> 
<groupId>[a group id eg com.myapp]</groupId> 
<artifactId>[a unique artifact id within your packages eg myapp]</artifactId> 
<version>[the version number eg 1.0-SNAPSHOT]</version> 
<packaging>jar</packaging> 
<name>[the name eg myapp]</name> 

continuación, sólo tiene que ejecutar experta en construir con los objetivos clean install para crear un archivo jar de su proyecto. Puede ejecutar la acumulación experto por derecho tintineo en el proyecto y va a correr> acumulación experto ...

El frasco se creará en [dir proyecto]/Target

+0

¡Fantástico! El detalle clave que me faltaba era el puntero las opciones de Maven en "Ejecutar como". No pude encontrar una forma de ejecutar una fase arbitraria de Maven para salvar mi vida ... m2e necesita desesperadamente un tutorial decente ... – HolySamosa

+0

@HolySamosa: recuerde que todavía puede ir al "directorio POM" y ejecutar su maven comandos a través de la línea de comandos (mvn clean install). A veces es más fácil que usar las configuraciones 'Ejecutar como'. – proko

0

Aunque "Ejecutar como experto instalar" haría El truco, puede ser bueno para saber que m2e realizará el equivalente de la fase del paquete al hacer "Exportar ... Jar/War/EAR file". Parece que también comprende las configuraciones de los complementos, al menos un poco, y al menos para EAR ...

Como resolverá los artefactos usando proyectos y el repositorio m2, también funcionará para módulos "no relacionados", ya que la dependencia que se resuelve en un proyecto es lo suficientemente buena para eclipsar al paquete. (es decir, no tiene que instalar la dependencia sin relación por separado, que se construirá de forma automática desde el proyecto Eclipse.)

No estoy seguro de que desplegaría nada se acumula aunque :-)

Cuestiones relacionadas