Maven: determine si las dependencias usan versiones más nuevas de bibliotecas frente al proyecto

Tengo varios conjuntos de bibliotecas. Por ejemplo:

  • Core 1.0
  • Core 1.5
  • Web 1.0 (usa Core 1.0)
  • Dibujo 1.0 (usa Core 1.5)

Mi problema surge cuando tengo un proyecto que utiliza las bibliotecas Web y Drawing. Codifico el número de versión de la biblioteca Core en una sección de administración de dependencias de mi proyecto y lo actualizo de vez en cuando. Quiero asegurarme de que si Web o Drawing usa una versión más nueva de Core, actualice el número de versión en dependencyManagement.

versions:display-dependency-updates me dice si hay nuevas versiones de Core disponibles, pero no quiero actualizar a una versión más nueva a menos que Web o Drawing lo requieran.

¿Hay alguna manera de determinar si las dependencias requieren versiones más nuevas de otras dependencias que las que usa mi proyecto?

Gracias.

preguntado el 03 de mayo de 12 a las 17:05

stackoverflow.com/questions/30571/… O versiones mvn: use-latest-versions -

No quiero actualizar a la última versión de una dependencia transitiva si la dependencia no usa la última versión. Quiero que la versión más alta se use activamente. -

maven hace esto automáticamente cuando resuelve dependencias: puede mirar en la salida del árbol de dependencias para ver cuáles están 'gestionadas por versión' hasta la versión más nueva -

1 Respuestas

Puede usar el mvn -Dverbose dependency:tree para ver la jerarquía de dependencia y también le mostrará los conflictos de versión como los que ha descrito.

También puede usar mvn versions:display-dependency-updates para ver las dependencias actualizadas.

contestado el 03 de mayo de 12 a las 18:05

Esa es una buena idea y ayuda. Mi proyecto es grande, por lo que la lista tiene varias páginas; ¿Hay alguna manera de enumerar los conflictos de alguna manera? - jon onstott

Supongo que puedes grep. :) Aunque también hay versiones: mostrar-dependencia-actualizaciones - Eugenio Kuleshov

Por ejemplo: mvn -Dverbose dependencia:árbol | grep "conflicto" - Eugenio Kuleshov

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.