Maison  >  Article  >  Java  >  Explication détaillée des exemples de diagrammes de dépendances Maven

Explication détaillée des exemples de diagrammes de dépendances Maven

零下一度
零下一度original
2017-06-26 14:31:031407parcourir

Dépendances transitives et portée des dépendances

Les dépendances de Maven sont transitives, telles que A->B, B->C, puis A dépend indirectement de C , c'est la transitivité de dépendance, où A est la première dépendance directe sur B, B est la deuxième dépendance directe sur C et C est la dépendance transitive de A.

En développement normal, si notre projet dépend de spring-core, que la portée de la dépendance est compilée et que spring-core dépend de commons-logging, et que la portée de la dépendance est également compilée, alors notre projet dépendra de commons -logging La portée de cette dépendance transitive est la compilation. La portée de la première dépendance directe et la portée de la deuxième dépendance directe déterminent la portée de la dépendance transitive. Nous utilisons le tableau suivant pour illustrer, dans lequel la colonne la plus à gauche est la première dépendance directe et la colonne du haut est la deuxième dépendance directe. Au milieu se trouvent les portées de dépendances transitives.

 

Compile

Test

Provided

Runtime

Compile

Compile

 

 

Runtime

Test

Test

 

 

Test

Provided

Provided

 

Provided

Provided

Runtime

Runtime

 

 

Runtime

Compiler

Test

Fourni

Exécution

Compile

    td>

Compile

  • Exécution

    Test

  • td>
  • Test

    Test

  • Fourni

    td>

    Fourni

    Fourni

  • Fourni

    Exécution

    Exécution

    Runtime

    Par exemple : la première portée de dépendance directe est Test, la deuxième portée de dépendance directe est Compile , Ensuite, la portée de la dépendance transitive est Test, et vous pouvez juger sur la base de ce tableau. En regardant attentivement le tableau, nous pouvons trouver ce modèle : Lorsque la portée de la deuxième dépendance directe est compilée, la portée de la dépendance transitive est la même comme le premier La portée des dépendances directes est cohérente Lorsque la portée de la deuxième dépendance directe est testée, la dépendance ne sera pas transmise Lorsque la portée de la deuxième dépendance directe est testée, la dépendance ne sera pas transmise ; Lorsque la portée de la deuxième dépendance directe est fournie, seule la dépendance de la première dépendance directe est également fournie, et la portée du transitif la dépendance est également fournie ; Lorsque la deuxième dépendance directe est également fournie, la portée de la dépendance transitive est également fournie. Lorsque la portée de la dépendance est l'exécution, la portée du transitif ; La dépendance est la même que la portée de la première dépendance directe, à l'exception de la compilation. Dans ce cas, la portée de la dépendance transitive est l'exécution.

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

    Déclaration:
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
    Article précédent:Collection ArrayListArticle suivant:Collection ArrayList