[英]Error: "build flag -mod=vendor only valid when using modules" when building Go project
[英]Using -mod flag in go CLI
我正在閱讀 godoc,了解如何使我的依賴項保持最新: https://golang.org/ref/mod#build-commands
它說-mod=mod
標志可用於自動更新 go.mod 文件。 但我無法使用它。
這是我嘗試過的命令:
% go get -mod=mod ./..
flag provided but not defined: -mod
usage: go get [-d] [-t] [-u] [-v] [-insecure] [build flags] [packages]
Run 'go help get' for details.
我顯然錯過了一些東西,因為我似乎無法讓旗幟工作。
經過一些實驗,看起來只有相當舊的 Go 版本才能理解go get -mod=
,尤其是 1.11 版本。 所以文檔已經過時了,你可以報告它。
官方推薦在 Go 版本 1.14 或更高版本上:自動更新現有的go.mod
文件並下載依賴項,而不是執行go get -mod=mod.
,只需運行:
go get -d .
為了使示例完整,您現在可以實際構建所有內容並將二進制文件放入$GOBIN
(或$GOPATH/bin
)中:
go install
如果它仍然不起作用,請檢查幾件事:
go
更新到最新版本您正在閱讀的在線文檔始終是最新的官方版本,而您可能使用的是舊版本。 檢查您的版本:
go version
以目前Go的開發速度,大部分人都在爭取盡快更新。 關注https://golang.org/doc/install
顯然,沒有簡單的方法可以在線閱讀舊文檔。 相反,我使用godoc
工具在本地執行此操作:
go get -v golang.org/x/tools/cmd/godoc
godoc -http=127.0.0.1:6060
保持上述命令運行,然后在瀏覽器中 go 到http://127.0.0.1:6060/cmd/go/
通過這種方式,我檢查了例如舊文檔所說的關於-mod
標志的內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.