2012-02-24 18 views
6

Suponiendo que ya está utilizando el complemento m2eclipse, si hace clic derecho en un proyecto Maven, hay un submenú Maven.¿Cuál es la diferencia entre "Actualizar instantáneas" y "Actualizar dependencias" en m2eclipse?

Dos de las acciones disponibles en este submenú son:

  • Actualizar dependencias
  • instantáneas Actualizar

he encontrado un answer que dice que "Actualizar instantáneas" es equivalente a usar el parámetro -U para mvn.

Si "instantáneas de actualización" es lo mismo que mvn -U, ¿qué hace "actualizar dependencias"?

Respuesta

1

En gran medida, depende de cómo se establezca la política de actualización de instantáneas en su entorno. De forma predeterminada, se supone que Maven actualiza las instantáneas una vez al día (de ahí la acción de indicador -U y "Actualizar instantáneas" para forzar la actualización de la instantánea), pero esta política se puede sobrescribir localmente o en el nivel de gestor de repositorio.

La "Actualización de las dependencias" hace más o menos lo mismo que la acción "Actualizar instantáneas", excepto que obliga a actualizar los artefactos de instantáneas. Ambas acciones restablecen el modelo de proyecto en memoria creado por M2E para realizar un seguimiento de las dependencias, incluidas las que provienen de Eclipse Workspace.

+0

Todavía no veo la diferencia. ¿Qué actualizaciones se fuerzan con "Dependencias de actualización" que "Actualizar instantáneas" no funciona? – Serxipc

+1

La "Actualización de las dependencias" no anula ninguna política predeterminada, por lo que no hay fuerza allí. –

+0

Entonces, ¿qué hacen las "Dependencias de actualización" para borrar el modelo de proyecto eclipse M2E y volver a cargarlo? Luego, dependiendo de la política de instantáneas de actualización, puede o no actualizar las instantáneas de los repositorios. Que tiene sentido. – Serxipc

2

Las instantáneas son dependencias, pero se usan de forma ligeramente diferente. La dependencia específica se determina usando grupo, nombre y versión. Estos atributos pueden ser idénticos para dos instantáneas diferentes. Maven usa la última instantánea basada en la marca de tiempo interna.

Las instantáneas son beneficiosas durante el desarrollo del proyecto en el que no desea cambiar su versión, pero quiere que sus usuarios usen la versión más reciente.

Así que ... "actualizar dependencias" descarga las dependencias que no tiene, dejando las que tiene intactas, "instantáneas de actualización" actualiza sus instantáneas a la última compilación.

Espero que esto ayude.

+0

Esto no ocurre en mi instalación de eclipse. Cuando hago clic en "Actualizar dependencias" puedo ver que m2eclipse está descargando todas las dependencias de SNAPSHOT en la vista de Maven Console, al igual que si hace clic en "Actualizar instantáneas" – Serxipc

+0

Sí ... pero las instantáneas y las dependencias son cosas diferentes y generalmente vienen de repos diferentes –

Cuestiones relacionadas