6 回答

TA貢獻(xiàn)1828條經(jīng)驗 獲得超4個贊
要確定緩存位置,您可以使用 go env:
go env|grep CACHE
要清除緩存,請使用go clean -modcache
或go clean -cache
取決于要清除的緩存類型。

TA貢獻(xiàn)1836條經(jīng)驗 獲得超3個贊
我在 Macos 10.13.6 上,使用go1.11 darwin/amd64
并且echo $GOPATH
是空的。
我在中找到了我的模塊$HOME/go/pkg/mod

TA貢獻(xiàn)1829條經(jīng)驗 獲得超7個贊
在終端中運(yùn)行
go?env?GOMODCACHE
go env?- 打印所有 Go 環(huán)境信息
go env NAME - 打印特定的環(huán)境變量。

TA貢獻(xiàn)1865條經(jīng)驗 獲得超7個贊
模塊緩存存儲在 中$GOPATH/pkg/mod
,或者$HOME/go/pkg/mod
如果$GOPATH
未設(shè)置。
注意:一般來說,模塊緩存是只讀的,并且是一個不可變的緩存。因此,你不應(yīng)該嘗試在那里編輯東西,也不應(yīng)該go
從緩存內(nèi)部運(yùn)行命令。
模塊緩存包含 zip 文件、解壓縮的模塊源代碼以及 VCS 緩存(不使用代理時)。緩存通常包含單個依賴項的多個版本。
如果你想檢查模塊緩存中依賴的代碼,一個快捷方式是你可以cd
通過以下方式直接找到解壓依賴的位置:
cd?$(go?list?-f?'{{.Dir}}'?-m?github.com/foo/bar)
這要求go list報告github.com/foo/bar
模塊緩存中模塊的目錄位置,默認(rèn)為您當(dāng)前在當(dāng)前模塊中使用的任何版本。
假設(shè)緩存是不可變的,一個相關(guān)的問題是你如何編輯一個依賴項(例如,如果你想添加一個調(diào)試日志,或者可能準(zhǔn)備發(fā)送一個依賴項的上游修復(fù))。此時一個常見的解決方案是使用gohack,它創(chuàng)建依賴項的可變副本(默認(rèn)情況下$HOME/gohack
,但位置由$GOHACK
變量控制)。gohack
還將您的當(dāng)前go.mod
文件設(shè)置為具有替換指令以指向該可變副本。

TA貢獻(xiàn)1826條經(jīng)驗 獲得超6個贊
如果你想清理緩存有一個命令go clean --modcache
如果您只需要更新一些依賴項,您可能希望從中清除有關(guān)此依賴項的信息
go.mod
go.sum
供應(yīng)商/modules.txt
- 6 回答
- 0 關(guān)注
- 918 瀏覽
添加回答
舉報