修復使用Go module后vscode 智能提示不能用的問題


在升級到 1.11后, go加入了go module這一特性, 支持相對路徑的導入包,這樣在$GOPATH之外的地方也可以進行項目開發。

但是vscode中很多插件只能工作在 $GOPATH下, 其中最重要的代碼智能提示也是如此
代碼提示主要由 github.com/mdemsky/gocode 這個模塊負責, 為了支持go module, 要使用新的gocode模塊,項目地址為 github.com/stamblerre/gocode, 為了更新插件

  1. 將$GOPATH/bin 中的 gocode 可執行文件刪掉

  2. go get -u -v github.com/stamblerre/gocode 獲取包, 這里是不能安裝的,有沖突

  3. 去到 $GOPATH/src/golang.org/x 這個目錄下, 刪除tools這個包,它和新版的 gocode不兼容,不要試圖 git pull獲取最新版,這個是被牆了的

  4. 從 https://github.com/golang/tools 下載最新的tools包,clone很慢就直接下載 zip 文件, 解壓到剛才原來的位置。

  5. 編譯安裝 stamblerre/gocode, go build -o $GOPATH/bin/gocode-gomod github.com/stamblerre/gocode或者直接到$GOPATH/src/github.com/stamblerre/gocode目錄下執行go build

到此, Vscode智能提示就可以正常工作了

轉自:

https://blog.csdn.net/richard_m_yang/article/details/100516891


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM