Mari kita bincangkan tentang mekanisme Vendor di golang

PHPz
Lepaskan: 2023-04-06 10:39:49
asal
1262 orang telah melayarinya

Golang ialah bahasa pengaturcaraan popular yang mempunyai keupayaan berbilang benang yang berkuasa dan mekanisme pengumpulan sampah yang cekap, dan digemari oleh ramai pembangun. Apabila membangun menggunakan Golang, anda sering perlu merujuk banyak perpustakaan dan pakej pihak ketiga Pada masa ini, mekanisme Vendor digunakan untuk mengurus proses ini.

Pengenalan kepada mekanisme Vendor

Mekanisme Vendor ialah mekanisme pengurusan pakej yang diperkenalkan dalam Golang versi 1.5, bertujuan untuk menyelesaikan masalah konflik versi yang mungkin berlaku apabila Golang merujuk kepada perpustakaan pihak ketiga. Sebelum menggunakan mekanisme Vendor, mekanisme pengurusan pakej Golang terutamanya menggunakan GOPATH, yang bermaksud bahawa semua perpustakaan pihak ketiga dimuat turun ke direktori yang sama untuk pengurusan.

Walau bagaimanapun, terdapat masalah dengan mekanisme ini: apabila projek yang berbeza perlu merujuk versi berbeza bagi pustaka yang sama, konflik versi mungkin berlaku, malah membuat pembangun terkial-kial menyalin kod ke direktori yang berbeza , sangat menyusahkan.

Oleh itu, mekanisme Vendor telah diperkenalkan dalam Golang versi 1.5, membenarkan kod perpustakaan pihak ketiga disalin terus ke dalam repositori kod projek, supaya setiap projek boleh menggunakan versi perpustakaannya sendiri tanpa Gangguan daripada projek lain tidak akan menyebabkan masalah pergantungan yang tidak perlu.

Proses pemasangan mekanisme Vendor

Setelah memahami peranan mekanisme Vendor, berikut ialah cara untuk melengkapkan pemasangan mekanisme Vendor.

Dalam versi sebelum Golang 1.6, mekanisme Vendor dimatikan secara lalai Anda perlu menambah tanda -vendor semasa menyusun kod untuk mendayakan mekanisme Vendor. Contohnya:

go build -v -vendor
Salin selepas log masuk

Dalam Golang 1.6 dan versi yang lebih baru, mekanisme vendor didayakan secara lalai, jadi anda hanya perlu mencipta direktori vendor dalam direktori akar projek.

Selepas mencipta direktori vendor, anda boleh menggunakan arahan go get untuk memasang perpustakaan pihak ketiga dan perpustakaan bergantungnya. Sebagai contoh, jika anda ingin memasang github.com/go-sql-driver/mysql, anda boleh menggunakan arahan berikut untuk memasangnya:

GO15VENDOREXPERIMENT=1 go get github.com/go-sql-driver/mysql
Salin selepas log masuk

Arahan ini akan mencipta github.com/go- sql dalam direktori vendor -driver/mysql direktori, muat turun semua perpustakaan bergantung perpustakaan, dan salin kodnya ke direktori vendor.

Selepas melengkapkan pemasangan pustaka pihak ketiga, anda boleh menggunakan mekanisme Vendor untuk mengurus kebergantungan projek.

Ringkasan

Menggunakan mekanisme Vendor boleh menyelesaikan masalah konflik versi di Golang dengan berkesan apabila merujuk kepada perpustakaan pihak ketiga, supaya setiap projek boleh menggunakan versi perpustakaannya sendiri secara bebas. Memasang mekanisme Vendor tidak rumit Anda hanya perlu mencipta direktori vendor dalam direktori akar projek dan menggunakan arahan go get untuk memasang perpustakaan pihak ketiga dan perpustakaan bergantung mereka. Jika anda menggunakan Golang untuk pembangunan, anda amat disyorkan untuk mencuba mekanisme Vendor. Saya percaya ia akan membawa anda pengalaman pembangunan yang lebih mudah.

Atas ialah kandungan terperinci Mari kita bincangkan tentang mekanisme Vendor di golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!