Ce qui est transitive Maven dépendance?

Cette question est sur le point de clarifier ce qu'est exactement un dépendance transitive est et comment il fonctionne très haut niveau dans Maven.

Ma définition: dans un arbre de dépendances comme Un --> B - > C, C est une dépendance transitive pour Un. Supposons B a une portée compiler dans Un.

Si C a une portée compiler dans B, puis déclarant B comme dépendance de Un suffit de construire Un avec Maven. Mais si C a une portée fourni dans B puis, quand Maven s'appuie Un, le bâtiment ne sera pas automatiquement compiler Un contre C sauf Un déclare C parmi ses dépendances.

Est-ce correct?

  • Ce n', contre une moyenne de 'compiler Un contre C'? Je suis un mvn débutant et j'ai remarqué que cet exemple est exactement ce que je ne savais pas. Je pense à Un contre C 'utilisation de certains import C.someClass à A. someClass'. Est-ce correct?
  • Je suppose que ce qu'il signifie est que si C a une portée fournis dans B, alors l'artefact généré ne sera pas inclure C. Cette déclaration à l'importation C. someClass à A. someClass fonctionnera lorsque vous avez C dans votre classpath au moment de la compilation, mais si pour une raison quelconque n'est PAS fourni lors de l'exécution, vous n'aurez pas la classe def trouvé exception.
InformationsquelleAutor Johan | 2017-01-18