1. 程式人生 > >mac下用vscode搭建golang整合開發環境

mac下用vscode搭建golang整合開發環境

新公司採用golang作為主要的開發語言,而且開發環境是mac,對我來說是一個不小的挑戰,生平第一次使用mac系統,另外一個在mac下沒有一個類似VS一樣的優秀的IDE,現在才發現微軟的偉大。

對一個IDE我有兩個最基本的需求,第一需要能夠語法識別高亮自動補全跳轉,第二就是能夠debug。只有vscode能夠完美的支援這兩個功能。
公司的started手冊推薦的編輯器是intelij,這是一個非常優秀的編輯器,一向喜歡研究新東西的我,開始搞。首先我在本地將go開發環境搭好,能夠用命令列方式來build一個hello world。接著安裝intelij,上網google方法,安裝go的plugin,安裝完之後不知道如何編譯,也沒人教,問了下別的同事,大家用intelij僅僅是一個編輯工具,並沒有用它做debug,這個不能滿足我的需求,於是就放棄了。就回到以前用過的sublime了,在windows下,sublime3是不支援debug的,google出來的文章都是採用sublime2,但是用sublime寫go必須要用的一個外掛gosublime,它只支援sublime3,但是gdbsublime只支援sublime2,無果,用sublime3結合gosublime來編寫,編譯和執行go程式沒有問題也很方便,但是如果要用它來debug,則不行,所以我只能期待gdb的外掛能夠儘快相容sublime3。本來到此時就該放棄了,記得同事曾經說現在很多人開始vscode去寫go,上網隨便百度了下,好像是可以滿足我的那兩個基本需求的。

回到用vs還是非常親切,畢竟做了那麼多年的vs開發。安裝好vscode,使用快捷鍵command+shift+p進入command模式,選中安裝Extensions
選擇go pliugin

安裝完之後再控制檯安裝工具


go get -u -v github.com/nsf/gocode
go get -u -v github.com/rogpeppe/godef
go get -u -v github.com/zmb3/gogetdoc
go get -u -v github.com/golang/lint/golint
go get -u -v github.com/lukehoban/go-outline
go get -u -v sourcegraph.com/sqs/goreturns
go get -u -v golang.org/x/tools/cmd/gorename
go get -u -v github.com/tpng/gopkgs
go get -u -v github.com/newhook/go-symbols
go get -u -v golang.org/x/tools/cmd/guru
go get -u -v github.com/cweill/gotests/...

安裝這些工具就可以滿足第一個需求編輯安裝執行go程式,要能debug需要安裝另外一個工具delve
安裝方法見連結中找到屬於你自己的系統來安裝delve工具。

這個時候整個vscode整合安裝執行debug環境就好了。
command+o開啟一個src的資料夾,在這個資料夾裡建立一個go檔案,寫上helloworld,mac中是command+shift+d進入debug模式,F12是加斷點,這和windows不大一樣。剩下就可以愉快的玩耍了。