Mengelakkan Kebergantungan Tidak Langsung dalam go.mod
Kebergantungan tidak langsung dalam fail go.mod timbul apabila kebergantungan langsung anda bergantung pada pakej lain yang ' t dinyatakan secara eksplisit dalam fail go.mod anda. Kebergantungan tidak langsung ini ditambahkan secara automatik pada fail anda semasa anda menjalankan perintah seperti go build.
Contoh dengan Colly
Pertimbangkan fail go.mod berikut:
module prodenv go 1.13 require ( github.com/gocolly/colly v1.2.0 )
Selepas menjalankan go build, anda mungkin perasan bahawa fail go.mod mengandungi perkara tidak langsung berikut dependencies:
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
Penjelasan
Colly versi 1.2.0 tidak mempunyai fail go.mod, yang bermaksud semua dependensinya dianggap tidak langsung. Oleh itu, apabila anda memasukkan Colly dalam go.mod anda, kebergantungannya juga ditambah sebagai kebergantungan tidak langsung.
Penyelesaian
Malangnya, tiada cara untuk mengelakkan kebergantungan tidak langsung sepenuhnya. Walau bagaimanapun, terdapat beberapa penyelesaian untuk menangani cabaran ini:
Atas ialah kandungan terperinci Bagaimana untuk Mengelakkan Ketergantungan Tidak Langsung dalam Fail `go.mod` Anda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!