2011-09-23 26 views

Respuesta

18

mvn:install copia su módulo Maven empaquetado en su repositorio local (de forma predeterminada, en ~/.m2/repository), al que pueden acceder otras compilaciones locales de Maven.

mvn:deploy carga su módulo Maven empaquetado a otro repositorio (generalmente remoto), al que accederán otras compilaciones Maven no necesariamente locales.

Consulte el documentation for the build lifecycle para obtener más información.

1

mvn:deploy lleva a cabo la implementación en el repositorio/entorno remoto, mvn:install instala todos los paquetes compilados en un repositorio local y los pone a disposición de otras compilaciones realizadas en la máquina local.

+0

¿Qué quiere decir con "todos los paquetes compilados"? – Daniel

+0

@Daniel, pom, jar, war, javadoc jar, fuente jar todo compilado/ensamblado por fases de compilación anteriores. –

0

En una frase: mvn:install compila e instala su componente en su repositorio Maven local, para que pueda usarlo cuando otros componentes utilizados y desarrollados localmente dependan de él. mvn:deploy implementa su componente (previamente instalado) en un repositorio remoto.

+0

¿El módulo _realmente_ necesita ser instalado antes de la implementación? – Daniel

+0

Creo que el ciclo de vida predeterminado de Maven contiene eso. Y si solo lo despliega, ¿qué debería implementarse entonces? Consulte la documentación en http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html. se afirma: Esto se debe a que si llamas a una fase de construcción, ejecutará no solo esa fase de construcción, sino también cada fase de construcción anterior a la fase de construcción llamada. – mliebelt

+0

El artefacto empaquetado. – Daniel

2

La fase install es responsable de la instalación de artefactos en los repositorios de almacenamiento en memoria caché local. Esto se aplica básicamente al repositorio Maven, pero un ejemplo bien conocido es también el repositorio OSGi Bundle apoyado por maven-bundle-plugin.

La fase deploy es responsable de la instalación de los artefactos en publicados repositorios. Esto generalmente se aplica a repositorios remotos, pero podría ser perfectamente un repositorio local expuesto al mundo exterior.

Como todas las fases de Maven, puede hacer con ellas lo que desee. Puede barajar las fases de los complementos como mejor le parezca, pero la semántica anterior es la convencional y debe ajustarse a ella para que sea coherente con las fases predeterminadas de los objetivos de otros complementos.

Cuestiones relacionadas