Go語言VS Code開發環境搭建

Go版本:1.14.4
系統:win10
編輯器:VS Code

golang 1.14 版本發佈已有一段時間,搜了一下網上之前的教程都已過時,所以整理了一篇最新的 golang 開發環境搭建教程。

一、下載Go語言安裝包

到官網https://golang.google.cn/dl/下載最新安裝包

go官網

二、安裝

點擊下載好的安裝包進行安裝,可修改安裝位置(默認安裝到C盤)
安裝到D盤

三、配置環境變量

打開環境變量頁面會發現,系統變量的Path中已經自動生成了Go的環境變量,並在用戶變量中生成了GOPATH(用來存放自己寫的Go代碼的地方),但是這個路徑並不是我們想要的,我們要創建自己的工作區在這裏插入圖片描述
我們來修改它,先修改 用戶變量 Path 內的對應路徑
用戶變量Path
再修改GOPATH,然後在用戶變量中創建一個 GOROOT 變量(golang的安裝文件夾)
GOROOT

四、打開GoMOD,再配置代理

打開命令行工具,輸入 go version,查看 go 版本
在這裏感謝「七牛雲」爲我們中國區的Golang開發者提供的代理服務
再輸入下面兩條命令,打開GoMOD 和 配置代理

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

打開GoMOD,再配置代理
做到這幾點後,我們現在就可以打開我們的VsCode(再次感謝七牛雲,從此以後我們再也不用到Github以及Golang.org上clone到本地進行install了)

五、在VScode中安裝GO插件

打開VScode,搜索插件 go,直接安裝
安裝GO插件

在安裝了Go插件後的VSCode,現在打開go文件後,會自動安裝我們自己的必要的環境依賴

六、安裝相關工具和環境依賴

打開之前定義的 GOPATH 對應的文件夾(E:\GO),新建一個 src 文件夾,在src內新建 hello/hello.go 文件,這時候Go插件會自動彈出提示,要我們安裝必要的環境依賴。
提示安裝和升級依賴
點擊 Update 和 Install All

安裝完成

七、Go Modules的使用

這玩意非常簡單,我們只需要明白它爲什麼存在,以及如何用即可。
Go mod的存在,是官方強推,爲了替代GOPATH而誕生的一個Go語言依賴庫管理器。之前所有的包都丟在GOPATH中,煩skr人。
這貨最大的好處就是,我們依賴的包可以指定版本。其次所有程序依賴的包,只會存在同一份。不會像npm那樣,同一個包還能有n多個存在。這樣我們的電腦就很省空間了,使用起來也非常簡單,常用命令就一個

$ go mod tidy

通俗來說就是將當前的庫源碼文件所依賴的包,全部安裝並記錄下來,多餘的包就刪掉,少了的就自動補上。

實踐操作一下:

進入hello文件夾,打開命令行工具執行以下命令:

$ go mod init

然後就多了一個 go.mod 文件
go.mod
此時我們的項目就採用了 go mod進行庫依賴管理,以後編寫完代碼後執行 go mod tidy 即可,這個命令會自動下載依賴的庫,也會刪除多餘的庫,更多的使用方式可以執行

go help mod

進行查看。

八、VSCode的Lunch.json配置以及Setting.json配置

具體怎麼進入設置的json文件,老文已經圖文並茂的描繪的很詳細了,我這就不再做過多介紹了
先是你們關心的Debug配置內容:

{
	"version": "0.2.0",
	"configurations": [{
		"name": "LaunchGo",
		"type": "go",
		"request": "launch",
		"mode": "auto",
		"program": "${fileDirname}",
		"env": {
			"GOPATH": "填自己的GOPATH路徑",
			"GOROOT": "填自己的GOROOT路徑"
		},
		"args": [],
		//"showLog": true
	}]
}

以下是Setting.json的最新配置,因爲我這個配置同時存在了一些別的組件,比如 golangci-lint,這種go語言風格包以及別的組件,所以複製到你們的VSCode中時,有些配置會出現紅色異常,將出現紅色異常的地方直接刪除或者註釋即可。之所以保留給你們,是覺得你們可能有些人也會安裝相關插件使用

{
"editor.wordWrap": "on",
// 如果useLanguageServer設爲true,那麼在編寫代碼時引入本地沒有的package時,會自動下載安裝
// 就是有時候會非常卡,保存go的編碼文件時偶爾會卡死。這點你們自己取捨吧
"go.useLanguageServer": false,
"editor.minimap.renderCharacters": false,
"editor.minimap.enabled": false,
"terminal.external.osxExec": "iTerm.app",
"go.docsTool": "gogetdoc",
"go.testFlags": ["-v","-count=1"],
"go.buildTags": "",
"go.buildFlags": [],
"go.lintFlags": [],
"go.vetFlags": [],
"go.coverOnSave": false,
"go.useCodeSnippetsOnFunctionSuggest": false,
"go.formatTool": "goreturns",
"go.gocodeAutoBuild": false,
"go.goroot": "填寫GOROOT路徑",
"go.gopath": "填寫GOPATH路徑",
"go.autocompleteUnimportedPackages": true,
"go.formatOnSave": true,
"window.zoomLevel": 0,
"debug.console.fontSize": 16,
"debug.console.lineHeight": 30,
}

結束

參考借鑑文章:VsCode搭建Go語言開發環境的配置教程

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章