Dans le contexte des modules Go, les dépendances sont des packages requis par un module particulier. Alors que les dépendances directes sont explicitement répertoriées dans l'instruction require du fichier go.mod, les dépendances indirectes sont automatiquement ajoutées lorsqu'une dépendance directe en dépend.
Cela peut conduire à une situation où le fichier go.mod d'un module contient de nombreuses dépendances indirectes, même si elles ne sont pas directement utilisées par le module lui-même. Cela peut être déroutant et difficile à gérer, surtout lorsque plusieurs versions d'une dépendance sont incluses.
Malheureusement, il n'est pas possible d'éviter complètement les dépendances indirectes dans les fichiers go.mod. Lors de l'utilisation des modules Go, toutes les dépendances requises par une dépendance directe seront automatiquement ajoutées en tant que dépendances indirectes, sauf indication contraire.
Prenons l'exemple fourni dans la question :
module prodenv go 1.13 require ( github.com/gocolly/colly v1.2.0 ... )
Dans ce cas , github.com/gocolly/colly v1.2.0 n'a pas de fichier go.mod, donc toutes ses dépendances sont répertoriées comme indirectes dans le module prodenv fichier go.mod.
Pour éviter les dépendances indirectes, il est recommandé d'utiliser des dépendances qui ont des fichiers go.mod. Cela garantira que seules les dépendances directement utilisées par le module sont répertoriées dans le fichier go.mod.
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!