亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    關(guān)于GO Modules的理解和遇到的問題

    下面golang教程欄目給大家介紹關(guān)于GO Modules的理解和遇到的問題。

    使用的go版本是1.16.5,代碼編輯器是GoLang2020.3.4,是在window10上面做GO Modules測試

    為何會有GOModules的出現(xiàn)

    GOROOT是指go的安裝路徑,GOPATH是指go的項(xiàng)目路徑,在沒有GOModules之前用的是GOPATH,由于GOPATH存在很多問題,從而使用GOModules進(jìn)行代替

    GOPATH存在的問題

    GOPATH模式下沒有版本控制的概念,具有致命的缺陷,至少會造成以下問題的產(chǎn)生:
    1.在執(zhí)行g(shù)o get的時(shí)候,你無法傳達(dá)任何的版本信息的期望,也就是說你也無法知道自己當(dāng)前更新的是哪一個版本,也無法通過指定來拉取自己所期望的具體版本
    2.在運(yùn)行 Go 應(yīng)用程序的時(shí)候,你無法保證其它人與你所期望依賴的第三方庫是相同的版本,也就是說在項(xiàng)目依賴庫的管理上,你無法保證所有人的依賴版本都一致
    3.你沒辦法處理v1,v2,v3,等等不同版本的引用問題,因?yàn)镚OPATH模式下的導(dǎo)入路徑都是一樣的,都是github.com/foo/bar。
    4.Go 語言官方從 Go1.11 起開始推進(jìn) Go modules(前身vgo),Go1.13 起不再推薦使用 GOPATH 的使用模式,Go modules 也漸趨穩(wěn)定,因此新項(xiàng)目也沒有必要繼續(xù)使用GOPATH模式。

    GOModules的出現(xiàn)解決了哪些問題

    1.Go語言長久以來的依賴管理問題
    2.“淘汰”現(xiàn)有的GOPATH的使用模式
    3.統(tǒng)一社區(qū)中的其它的依賴管理工具(提供遷移功能)

    GOModules和GOPATH的關(guān)系

    一、設(shè)置一下項(xiàng)目路徑
    關(guān)于GO Modules的理解和遇到的問題
    二、打開編輯器,項(xiàng)目根目錄運(yùn)行以下命令

    go mod init

    關(guān)于GO Modules的理解和遇到的問題

    三、安裝第三方依賴

    關(guān)于GO Modules的理解和遇到的問題

    關(guān)于GO Modules的理解和遇到的問題

    關(guān)于GO Modules的理解和遇到的問題

    現(xiàn)在可以看出GOModules和GOPATH的關(guān)系了,”go get”命令會把第三方依賴包放在GOPATH路徑下,GOModules在多人開發(fā)時(shí)為了使所有人的開發(fā)版本一致,做了版本控制,確保所有人使用的依賴都是一樣的版本,我的理解是GOModules是GOPATH的一種升級版本

    關(guān)于GO Modules的理解和遇到的問題

    最后注意一點(diǎn),我使用的編輯器是GOLang,GOModules會出現(xiàn)如下問題,出現(xiàn)這個問題說明第三方依賴包是成功下載安裝的,主要是編輯器的原因造成
    關(guān)于GO Modules的理解和遇到的問題

    以下是解決方法

    關(guān)于GO Modules的理解和遇到的問題

    關(guān)于GO Modules的理解和遇到的問題

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號