Mac解決VsCode導入Golang第三方包出錯 【from $GOPATH】【from $GOROOT】
問題描述
經(jīng)常遇到vsCode導入Go的第三方包出錯,主要提示路徑不對轧抗,例如以下出錯提示刁笙。
這咱問題引起的主因是vsCode中的go.Path文件沒有設(shè)置好拖叙。因為mod開啟后驻襟,會自動到pkg
這個包真友,也就是src
同級目錄。本人不想將mod下載下來的第三方包放置在src目錄文件件中熊尉,但vscode設(shè)置了go.Path路徑后罐柳,會自動在在路徑中加入src,因為這個問題在網(wǎng)上查找了很多相關(guān)資料都未得到解決狰住。今天自己查看這個問題并得以解決以示記錄张吉,防備后續(xù)遇到相關(guān)問題,便于解決
設(shè)置VsCode
用command+,
打開配置信息
進入設(shè)置配置文件
點擊Edit in setting.jso
加入如下代碼:
{
"go.gopath": "/Users/xx/Documents/Code/go/pkg/mod"
}
保存后退出
設(shè)置go配置文件
在終端輸入
go env|grep GOMODCACHE
查看下當前配置文件時的cache存放路徑催植,將其修改為與vscode的go.path路徑相同并多增加一層路徑/src肮蛹,因為vscode會自動增加/src路徑
修改命令如下:
go env -w GOMODCACHE="/Users/xx/Documents/Code/go/pkg/mod/src"
至此配置完成勺择,以解決了不想將mod的第三方庫下載到src,亂的問題伦忠,同時解決引入包出錯的問題省核。
完成后記得重啟vscode,并且以上的方法是使用mod管理包情況下昆码,需要開啟GO111MODULE="on"