真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何進行管理工具gomodules的使用

本篇文章為大家展示了如何進行管理工具go modules的使用,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

成都創(chuàng)新互聯(lián)從2013年開始,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目做網(wǎng)站、成都網(wǎng)站設(shè)計網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元白山做網(wǎng)站,已為上家服務(wù),為白山各地企業(yè)和個人服務(wù),聯(lián)系電話:028-86922220

背景

由于之前寫k8s operator在引入go的包的時候,涉及到go的包管理工具,因為自己寫java已經(jīng)很多年,maven的包管理工具很是好用,便想到golang是否也有類似的工具, goer都知道go的包引入帶上github.com類似的前綴,就會自動從go的第三方檢索服務(wù)pkg.go.dev下載對應(yīng)的文件,而該檢索服務(wù)會定期從github更新最新的代碼。

go mod 是golang 1.11版本引入的。相對于之前要么是沒有包管理,要么是管理工具不好用

使用

  1. 查看golang的版本,確保在1.11及以上版本 go version go version go1.15.2 darwin/amd64

  2. 設(shè)置GO111MODULE為on GO111MODULE 有三個值 : off,on,auto(默認)

  • off 關(guān)閉go mod的功能,查找包沿用一起的GOPATH模式或者通過vendor目錄方式

  • on 開啟go mod功能,不會去查找GOPATH目錄

  • auto,分情況,

    1. 當前目錄在GOPATH/src之外且該目錄包含go.mod文件,會開啟go mod功能

    2. 當前文件在包含go.mod文件的目錄下面

  1. 初始化項目 直接在當前項目下執(zhí)行go mod init,則會在當前項目下建立go.mod文件 如果該項目在GOPATH目錄下,且沒設(shè)置GO111MODULE為on,則會報錯:

go: modules disabled inside GOPATH/src by GO111MODULE=auto; see 'go help modules'

再執(zhí)行go build 則會把項目依賴的文件自動添加到go.mod中且會生成go.sum文件,
如果有存在包依賴沖問題,直接修改按照提示修改go.mod文件對應(yīng)的版本就可以。 如:

../../../../pkg/mod/k8s.io/client-go@v11.0.0+incompatible/kubernetes/scheme/register.go:26:2: module k8s.io/api@latest found (v0.19.4), but does not contain package k8s.io/api/auditregistration/v1alpha1
go.mod  
module github.com/monkeyboy123/custom-controller

go 1.15

require (
	github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b
	github.com/imdario/mergo v0.3.11 // indirect
	golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e // indirect
	k8s.io/api v0.19.4 // indirect
	k8s.io/apimachinery v0.19.4
	k8s.io/client-go v11.0.0+incompatible
	k8s.io/klog v1.0.0 // indirect
	k8s.io/utils v0.0.0-20201110183641-67b214c5f920 // indirect
)

直接修改k8s.io/client-go v11.0.0+incompatible為k8s.io/client-go v0.19.4 即可

關(guān)于使用go mod管理的話,依賴包的下載會下到$GOPATH/pkg/mod目錄下,而不再是$GOPATH/src目錄下

上述內(nèi)容就是如何進行管理工具go modules的使用,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


網(wǎng)站名稱:如何進行管理工具gomodules的使用
網(wǎng)站鏈接:http://weahome.cn/article/psgehd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部