【Golang】vscode 設置 go 開發環境


步驟

1. 始

Golang 語言開發選擇一款合適的編輯器,能加速你敲字的靈感,這里推薦微軟的 Visual Studio Code,簡稱 vscode。

2. 安裝 go 插件

首先需要安裝 go 語言插件,在 vscode 擴展中搜索 “go”,如下圖,下載安裝go插件

image-20201101170130488

image-20201101170447244

3. 設置 GOPROXY

如果想要 vscode 在 Go語言開發的時候為我們提供諸如代碼提示、代碼自動補全等功能,需要安裝 go tools,但是安裝 tools 需要設置 goproxy,否則會因為網絡問題無法下載 tools 工具。

在此之前請先設置GOPROXY,打開終端執行以下命令:

go env -w GOPROXY=https://goproxy.cn,direct

4. 安裝 Go語言開發工具包

安裝 Golang Tools,按下 Ctrl/Cmd+P,輸入> Go: Install/Update Tools,然后回車,選擇你要安裝的 tools 插件

image-20201101172850059

image-20201101173030140

5. 插件介紹

tools 名稱 用途
gocode github.com/mdempsky/gocode 代碼自動完成
gopkgs github.com/uudashr/gopkgs/v2/cmd/gopkgs 該工具為未導入的軟件包提供自動補全功能
go-outline github.com/ramya-rao-a/go-outline 此工具提供了文檔大綱功能以及當前文件功能中的轉到符號
go-symbols github.com/acroca/go-symbols 此工具提供了工作空間中的轉到符號功能。
guru golang.org/x/tools/cmd/guru 該工具提供查找參考查找接口實現功能。
它也可用於通過設置提供轉到定義"go.docsTool"
gorename golang.org/x/tools/cmd/gorename 此工具提供了重命名符號功能。
gotests github.com/cweill/gotests/... 該工具為Go: Generate Unit Tests命令集提供支持。
gomodifytags github.com/fatih/gomodifytags 該工具支持Go: Add Tags to Struct FieldsGo: Remove Tags From Struct Fields命令。
impl github.com/josharian/impl 該工具為Go: Generate Interface Stubs命令提供支持。
fillstruct github.com/davidrjenni/reftools/cmd/fillstruct 該工具提供了對Go: Fill struct命令的支持。
goplay github.com/haya14busa/goplay/cmd/goplay 該工具為Go: Run on Go Playground命令提供支持。
godoctor github.com/godoctor/godoctor 該工具提供了重構功能。
它不支持Go模塊,因此我們希望gopls它將提供此功能(golang / go#37170)。
dlv github.com/go-delve/delve/cmd/dlv 這是Go語言的調試器。它用於提供此擴展的調試功能。
gocode-gomod github.com/stamblerre/gocode
goreturns github.com/sqs/goreturns
golint golang.org/x/lint/golint

6. 打開vscode設置

image-20201101174435968

image-20201101174527975

7. settings.json 配置

  "go.inferGopath": true,
  "go.autocompleteUnimportedPackages": true,
  "go.gocodePackageLookupMode": "go",
  "go.gotoSymbol.includeImports": true,
  "go.useCodeSnippetsOnFunctionSuggest": true,
  "go.useCodeSnippetsOnFunctionSuggestWithoutType": true,
  "go.docsTool": "guru",

image-20201101174633072

8. settings.json 參數介紹:

8.1 跳轉到定義

  • go.docsTools:這里有三個選項,默認使用 gogetdoc,不知為何我這里選擇之后無法使用 ctrl/cmd +鼠標左鍵點擊跳轉函數或者源碼,於是我選擇了 guru

image-20201101175010106

9. 效果

QQ20201101-181724-HD

參考鏈接:

https://github.com/microsoft/vscode-go

https://github.com/golang/vscode-go

https://github.com/golang/vscode-go/blob/master/docs/tools.md

https://golang.google.cn/


免責聲明!

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



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