問題
在 go.mod 檔案中我寫道:
module github.com/Siiir/vector
go 1.17
require github.com/huandu/go-clone v1.3.2 // indirect
replace clone => github.com/huandu/go-clone[v1.3.2]
它說我不能做這樣的替換。我實際上用匯入包的名稱解決了我的問題。沒有那個破折號很方便和作業。我發現我可以clone.something用來參考一個函式。無需鍵入go-clone.something。
無論如何,假設一個包名確實很瘋狂或不方便。我該如何更換它?
我所看到的:
- 我見過一個兄弟問題: go modules - replace doesn't work - 沒有版本的替換模塊必須是目錄路徑(根或以
我嘗試了什么:
- 使用終端:
- go mod edit -replace=clone=github.com/huandu/go-clone
得到:go: -replace=clone=github: unversioned new path must be local directory
- 手動編輯:
- 像這樣的嘗試:替換克隆=> github.com/huandu/go-clone[v1.3.2]
得到:replacement module without version must be directory path (rooted or starting with ./ or ../)
uj5u.com熱心網友回復:
無論如何,假設一個包名確實很瘋狂或不方便。我該如何更換它?
你不能。
你不應該。匯入路徑是你在import宣告中只寫一次的東西,包名可以在每個檔案級別上用import nicename "something.you.think/is-totally/inconvenient/and/unacceptable-to/your_taste".
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/473037.html
上一篇:確定2022-01-14T20:56:55Z是否是Go中的有效日期時間
下一篇:Go泛型中什么時候不需要波浪號?
