[英]How to upgrade the go version in a go mod
在 go 模組中升級 go 版本的正確方法是什么,特別是從 1.13 升級到 1.14?
您是否只需編輯 go.mod 文件並將go 1.13
更改為go 1.14
?
我不是在問如何編輯 go.mod 文件,我是在問是否可以簡單地更改 go 中的 go 版本是否合適,其他所有文件的依賴項仍然是。 ?
用法:
go mod edit [editing flags] [go.mod]
Edit 提供了一個用於編輯 go.mod 的命令行界面,主要供工具或腳本使用。 它只讀取 go.mod; 它不查找有關模塊的信息。 默認情況下,edit 讀取和寫入主模塊的 go.mod 文件,但可以在編輯標志后指定不同的目標文件。
...
-go=version 標志設置預期的 Go 語言版本。
很簡單:
go mod edit -go=1.14
但是你也可以手動編輯go.mod
,它是一個簡單的文本文件。 go mod edit
主要用於腳本,因此對go.mod
更改可以輕松自動化。
另一個答案很好,但作為另一種方法,假設你有這個:
module north
go 1.13
您可以刪除go
行,然后運行go mod tidy
。 結果:
module north
go 1.16
https://golang.org/cmd/go#hdr-Add_missing_and_remove_unused_modules
go build
和go test
:這些命令檢查 go.mod 並自動下載缺少的依賴項。 所以不,當在 go.mod 中修改版本時,不需要使用go mod tidy
。 在某些情況下(主要是 CI),您希望在構建(或測試)需要之前使用go mod download
下載緩存中的模塊。
這里提供的答案對我幫助很大。 但是,特別是對於 Windows 用戶,可能需要進行一些調整。
我在命令提示符下使用:
go mod edit -go 1.17
並不是:
go mod edit -go=1.17
請注意省略 ''=" 符號。
這就是我的做法
go mod edit -go 1.18
go mod tidy
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.