Repaso
English
Maven, Git y SDLCIntermedioVCS-06

¿Qué es una dependencia transitiva?

Opciones

  1. Una dependencia que cambia muy a menudo entre versiones
  2. Una librería que no declaraste, traída por otra (Opción correcta)
  3. Una dependencia que solo se usa al ejecutar los tests
  4. Una librería escrita en otro lenguaje de programación

Respuesta

Una librería que no declaraste, traída porque una de tus dependencias la necesita

Por qué

Si tu proyecto depende de la librería A, y A depende de B, Maven también descarga B por ti: B es una dependencia transitiva.

Es cómodo, pero puede causar conflictos de versión cuando dos librerías necesitan versiones distintas de C. Maven lo resuelve con "gana la definición más cercana": la versión más próxima a tu proyecto en el árbol de dependencias.

Inspecciona el árbol con mvn dependency:tree; excluye o fija versiones con <exclusions> o dependencyManagement.

mvn dependency:tree

Recuerda

Transitiva = dependencias de tus dependencias.

Términos clave

Practica esta pregunta en Repaso