您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“GO中Modules的示例分析”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“GO中Modules的示例分析”這篇文章吧。
使用的go版本是1.16.5,代碼編輯器是GoLang2020.3.4,是在window10上面做GO Modules測試
GOROOT是指go的安裝路徑,GOPATH是指go的項目路徑,在沒有GOModules之前用的是GOPATH,由于GOPATH存在很多問題,從而使用GOModules進行代替
GOPATH模式下沒有版本控制的概念,具有致命的缺陷,至少會造成以下問題的產生:
1.在執行go get的時候,你無法傳達任何的版本信息的期望,也就是說你也無法知道自己當前更新的是哪一個版本,也無法通過指定來拉取自己所期望的具體版本
2.在運行 Go 應用程序的時候,你無法保證其它人與你所期望依賴的第三方庫是相同的版本,也就是說在項目依賴庫的管理上,你無法保證所有人的依賴版本都一致
3.你沒辦法處理v1,v2,v3,等等不同版本的引用問題,因為GOPATH模式下的導入路徑都是一樣的,都是github.com/foo/bar。
4.Go 語言官方從 Go1.11 起開始推進 Go modules(前身vgo),Go1.13 起不再推薦使用 GOPATH 的使用模式,Go modules 也漸趨穩定,因此新項目也沒有必要繼續使用GOPATH模式。
1.Go語言長久以來的依賴管理問題
2.“淘汰”現有的GOPATH的使用模式
3.統一社區中的其它的依賴管理工具(提供遷移功能)
一、設置一下項目路徑
二、打開編輯器,項目根目錄運行以下命令
go mod init
三、安裝第三方依賴
現在可以看出GOModules和GOPATH的關系了,”go get”命令會把第三方依賴包放在GOPATH路徑下,GOModules在多人開發時為了使所有人的開發版本一致,做了版本控制,確保所有人使用的依賴都是一樣的版本,我的理解是GOModules是GOPATH的一種升級版本
最后注意一點,我使用的編輯器是GOLang,GOModules會出現如下問題,出現這個問題說明第三方依賴包是成功下載安裝的,主要是編輯器的原因造成
以下是解決方法
以上是“GO中Modules的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。