日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

php小編小新解答為什么在使用”go get -u”命令時會下載同一個包的兩個版本。這個問題的原因在于go mod的工作原理。go mod是Go語言在1.11版本引入的依賴管理工具,它會根據項目的go.mod文件自動下載和管理依賴包。當我們使用”go get -u”命令時,它會檢查go.mod文件中的依賴包版本,并嘗試下載最新的版本。然而,有些包的版本更新可能會依賴于其他包的不同版本,因此go mod會下載兩個版本的包以滿足依賴關系,這就是為什么會下載同一個包的兩個版本的原因。

問題內容

我使用 go get -u 來獲取依賴于 golang.org/x/[email?protected] 的軟件包。我注意到它首先下載 golang.org/x/[email?protected] 然后下載 golang.org/x/[email?protected]

然后我運行 go clean -modcachego get golang.org/x/text ,它下載了 golang.org/x/textv0.4.0 ,然后再次 go get -u entgo.io/ent 。這次 go 沒有下載 golang.org/x/[email?protected]

那么,為什么 go get -u 在本地沒有最新版本時同時下載舊版本和最新版本,以及為什么在本地有最新版本時它不下載舊版本?

解決方法

因為這是一個兩步過程

    獲取依賴項
    更新依賴項

從編程的角度來看,沒有充分的理由將這些合并到“獲取最新依賴項”的單一關注點中。

來自 go 命令文檔:

-u 標志指示 get 更新提供命令行上命名的包的依賴項的模塊,以便在可用時使用較新的次要版本或補丁版本。

這意味著 -u 專門處理您所獲取的包所依賴的模塊,而不是您所獲取的包的模塊。

此外,似乎 -u 與將 v0 版本中的任何更改視為主要版本更改的 Go 慣用法無關,因此不能出于原則輕易推薦使用 -u 。 golang.org/x/test 的自述文件甚至說:

在 x/text 版本達到 1.0.0 之前,次要版本被視為主要版本。因此從 0.1.0 到 0.2.0 被認為是一個主要版本的提升。

分享到:
標簽:Go語言
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定