一、介紹
對(duì)于Visual Studio Code開(kāi)發(fā)工具,有一款優(yōu)秀的GoLang插件,它的主頁(yè)為:https://github.com/microsoft/vscode-go
這款插件的特性包括:
- Colorization 代碼著彩色
- Completion Lists 代碼自動(dòng)完成(使用gocode)
- Snippets 代碼片段
- Quick Info 快速提示信息(使用godef)
- Goto Definition 跳轉(zhuǎn)到定義(使用godef)
- Find References 搜索參考引用(使用go-find-references)
- File outline 文件大綱(使用go-outline)
- Workspace symbol search 工作區(qū)符號(hào)搜索(使用 go-symbols)
- Rename 重命名(使用gorename)
- Build-on-save 保存構(gòu)建(使用go build和go test)
- Format 代碼格式化(使用goreturns或goimports或gofmt)
- Add Imports 添加引用(使用 gopkgs)
- Debugging 調(diào)試代碼(使用delve)
IDE功能:
調(diào)試功能:
二、安裝工具
首先,你需要安裝Visual Studio Code 版本為0.10。在命令面板(Ctrl-Shift-P或F1鍵)選擇Extension,并選擇Go。
注:Visual Studio Code 安裝,請(qǐng)查看《3.1 Visual Studio Code》。
設(shè)置工作環(huán)境系統(tǒng)變量GOPATH,請(qǐng)查看《3.3 設(shè)置環(huán)境變量GOPATH》。本機(jī)的GOPATH為D:\GoWorks。打開(kāi)要工作的GOPATH文件夾或子文件夾,可以開(kāi)始編輯go文件。
其他插件安裝詳見(jiàn)《四、插件配置》。安裝之后界面如下:
按下F5,提示不能調(diào)試,要安裝調(diào)試工具。
調(diào)試工具安裝,在命令行運(yùn)行:
go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv
在按下F5,進(jìn)行調(diào)試:
三、配置工具3.1 settings.json
下面的Visual Studio代碼設(shè)置可用于Go擴(kuò)展。這些都可以在用戶的喜好來(lái)設(shè)置或工作區(qū)設(shè)置(.vscode/settings.json)。
打開(kāi)工作區(qū)settings.json:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
{ "files.autoSave": "onFocusChange", "go.buildOnSave": true, "go.lintOnSave": true, "go.vetOnSave": true, "go.buildFlags": [], "go.lintFlags": [], "go.vetFlags": [], "go.useCodeSnippetsOnFunctionSuggest": false, "go.formatOnSave": false, "go.formatTool": "goreturns", "go.goroot": "C:\\go", "go.gopath": "D:\\GoWorks" } |
3.2 launch.json
調(diào)試工具配置launch.json:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
{ "version": "0.2.0", "configurations": [ { "name": "Launch", "type": "go", "request": "launch", "mode": "debug", "program": "${workspaceRoot}", "env": {}, "args": [] } ] } |
program參數(shù)可以指一個(gè)包的文件夾進(jìn)行調(diào)試,或該文件夾中的一個(gè)文件。
mode參數(shù)可以被設(shè)置為:
- debug 編譯調(diào)試器下的程序文件夾和發(fā)射的內(nèi)容。 [默認(rèn)]
- test 在程序文件夾中調(diào)試測(cè)試。
- exec 來(lái)運(yùn)行構(gòu)建當(dāng)前代碼的程序文件夾的預(yù)建的二進(jìn)制文件來(lái)代替。
3.3 構(gòu)建和調(diào)試擴(kuò)展
可以通過(guò)外延擴(kuò)展設(shè)置開(kāi)發(fā)環(huán)境的調(diào)試。
首先確保在.vscode/extensions沒(méi)有安裝。然后克隆其他地方版本庫(kù)在你的機(jī)器上,運(yùn)行NPM安裝和打開(kāi)Code的開(kāi)發(fā)實(shí)例。
在cmd命令中,打開(kāi)D:\GoWorks目錄:
在cmd窗口運(yùn)行如下命令:
git clone https://github.com/Microsoft/vscode-go
轉(zhuǎn)到vscode-go目錄
運(yùn)行npm install
輸入 code . 彈出 vscode-go窗口
現(xiàn)在你可以調(diào)試viewlet并選中Launch Extension當(dāng)按F5鍵。
在 [Extension Development Host] 實(shí)例中,打開(kāi)GOPATH文件夾。
你現(xiàn)在可以命中斷點(diǎn)和單步執(zhí)行擴(kuò)展。
如果對(duì)擴(kuò)展.TS文件進(jìn)行編輯,只需重新加載[Extension Development Host]Code實(shí)例在新擴(kuò)展的代碼加載,調(diào)試實(shí)例會(huì)自動(dòng)連接。
詳細(xì)新可以參考:https://github.com/Microsoft/vscode-go/blob/master/src/debugAdapter/Readme.md