Maison >développement back-end >Golang >Comment éviter les dépendances indirectes dans votre fichier « go.mod » ?
Éviter les dépendances indirectes dans go.mod
Les dépendances indirectes dans les fichiers go.mod surviennent lorsque vos dépendances directes dépendent d'autres packages qui ne le sont pas. t explicitement spécifié dans votre fichier go.mod. Ces dépendances indirectes sont automatiquement ajoutées à votre fichier lorsque vous exécutez des commandes comme go build.
Exemple avec Colly
Considérez le fichier go.mod suivant :
module prodenv go 1.13 require ( github.com/gocolly/colly v1.2.0 )
Après avoir exécuté go build, vous remarquerez peut-être que le fichier go.mod contient les dépendances indirectes suivantes :
github.com/PuerkitoBio/goquery v1.5.1 // indirect github.com/antchfx/htmlquery v1.2.2 // indirect github.com/antchfx/xmlquery v1.2.3 // indirect github.com/antchfx/xpath v1.1.5 // indirect github.com/gobwas/glob v0.2.3 // indirect github.com/kennygrant/sanitize v1.2.4 // indirect github.com/saintfish/chardet v0.0.0-20120816061221-3af4cd4741ca // indirect github.com/temoto/robotstxt v1.1.1 // indirect
Explication
Colly version 1.2 .0 n'a pas de fichier go.mod, ce qui signifie que toutes ses dépendances sont considérées comme indirectes. Par conséquent, lorsque vous incluez Colly dans votre go.mod, ses dépendances sont également ajoutées en tant que dépendances indirectes.
Solution
Malheureusement, il n'y a aucun moyen d'éviter les dépendances indirectes entièrement. Cependant, il existe quelques solutions pour relever ce défi :
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!