一.前言
vscode
使用的順手了,真的很難再換到沉重的ide
去。但是vscode
的debug
確實比不過老牌ide
自帶的,因此只能靠咱們自己去安裝了。。
二. 正文
1.vscode的擴展
(1)搜索擴展go,安裝 (2)ctrl_cammand+P ,輸入go:install,FQ下載插件 (3)如果設置了go mod方式,那么vscode一次只能打開一個項目文件夾。不然會報錯: could not import xx $GOROOT could not import xx $GOPATH (4)復制忽略$符號問題: 打開設置,搜索wordSeparators,去掉正則匹配中的$ (5)查看每行代碼的git提交人,提交記錄 安裝擴展:git history和 gitLens (6)vscode頁面預覽以及打開多個窗口 1)打開設置,搜索Enable PreView,去掉勾選 2)settings新增設置:"workbench.editor.showTabs":true (7) vscode調試go代碼 : 安裝delve 參考:https://www.jianshu.com/p/d8e09faf498c (8)理解goroot,gopath以及go mod 參考:https://blog.csdn.net/zkyapple/article/details/112108283 (9)vscode收縮文件中所有代碼,打開收縮 折疊代碼塊快捷鍵 command + k + 0 #長按command 展開代碼塊快捷鍵 command + k + j #長按command (10)vscode關閉go的自動格式化代碼 (1)打開設置,搜索: format on save (2)找到go部分,打開setting,會自動配置一些字段,全部設置為false即可
2.vscode的單元測試
(1) 找到要調用的方法文件同級目錄,比如要調用的文件是xxx.go (2)新建測試文件xxx_test.go,保持package一致.且方法名需要Test開頭 (3)主要用到golang的testing包。偽代碼如下 package xx run test | debug test func Testxx(t *testing.T) { //初始化配置的代碼。從main.go中復制即可,保證項目可以加載到配置,比如鏈接mysql等 //自己構造參數,調用方法即可 err : = xxxx(自己構造的參數) } (4)此時我們鼠標點擊方法名上面的run test即可。 (5)run test的時候無法fmt打印? "go.testFlags": ["-v"] 設置加上之后,我們的format等打印就會出來了
3 .vscode的debug
(1)首先要知道自己的cpu架構,目前mac主要分為amd和arm的。 博主是m1芯片,也就是arm的,因此要安裝arm 版本的golang。 (2)golang 版本大於1.6 (貌似之前的版本debug有點問題) (3)安裝dlv go get -u github.com/go-delve/delve/cmd/dlv (4) 點擊方法名上面的 debug test ,會要求創建launch.json,同意即可。 主要要選擇go。使用vscode默認生成的json即可 { // 使用 IntelliSense 了解相關屬性。 // 懸停以查看現有屬性的描述。 // 欲了解更多信息,請訪問: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "Launch Package", "type": "go", "request": "launch", "mode": "auto", "program": "${fileDirname}" } ] } (5) 打斷點,執行debug test (6) 報錯信息 報錯:could not launch process: can not run under Rosetta, check that the installed build of Go is right for your CPU architecture Process exiting with code: 1 方案: 1.下載golang 的arm ,且版本要大於1.6 2.重新安裝dlv (錯誤原因就在於,使用的是之前老版本的dlv,重新下載即可) go get -u github.com/go-delve/delve/cmd/dlv
基本上按照這些步驟執行下來就可以愉快的使用vscode
的debug
功能了。不能不說真的強無敵,每一步的變量值都能顯示出來,調試神器啊。不禁想起當年靠打印調試程序的日子,真特么青澀。
轉載:https://blog.csdn.net/LJFPHP/article/details/120242148
一.前言 vscode使用的順手了,真的很難再換到沉重的ide去。但是vscode的debug確實比不過老牌ide自帶的,因此只能靠咱們自己去安裝了。。
二. 正文1.vscode的擴展(1)搜索擴展go,安裝 (2)ctrl_cammand+P ,輸入go:install,FQ下載插件 (3)如果設置了go mod方式,那么vscode一次只能打開一個項目文件夾。不然會報錯: could not import xx $GOROOT could not import xx $GOPATH (4)復制忽略$符號問題: 打開設置,搜索wordSeparators,去掉正則匹配中的$ (5)查看每行代碼的git提交人,提交記錄 安裝擴展:git history和 gitLens (6)vscode頁面預覽以及打開多個窗口 1)打開設置,搜索Enable PreView,去掉勾選 2)settings新增設置:"workbench.editor.showTabs":true (7) vscode調試go代碼 : 安裝delve 參考:https://www.jianshu.com/p/d8e09faf498c (8)理解goroot,gopath以及go mod 參考:https://blog.csdn.net/zkyapple/article/details/112108283 (9)vscode收縮文件中所有代碼,打開收縮 折疊代碼塊快捷鍵 command + k + 0 #長按command 展開代碼塊快捷鍵 command + k + j #長按command (10)vscode關閉go的自動格式化代碼 (1)打開設置,搜索: format on save (2)找到go部分,打開setting,會自動配置一些字段,全部設置為false即可1234567891011121314151617181920212223242.vscode的單元測試(1) 找到要調用的方法文件同級目錄,比如要調用的文件是xxx.go (2)新建測試文件xxx_test.go,保持package一致.且方法名需要Test開頭 (3)主要用到golang的testing包。偽代碼如下 package xx
run test | debug testfunc Testxx(t *testing.T) {//初始化配置的代碼。從main.go中復制即可,保證項目可以加載到配置,比如鏈接mysql等//自己構造參數,調用方法即可err : = xxxx(自己構造的參數)
}
(4)此時我們鼠標點擊方法名上面的run test即可。 (5)run test的時候無法fmt打印? "go.testFlags": ["-v"] 設置加上之后,我們的format等打印就會出來了123456789101112131415161718193 .vscode的debug(1)首先要知道自己的cpu架構,目前mac主要分為amd和arm的。博主是m1芯片,也就是arm的,因此要安裝arm 版本的golang。
(2)golang 版本大於1.6 (貌似之前的版本debug有點問題)
(3)安裝dlv go get -u github.com/go-delve/delve/cmd/dlv(4) 點擊方法名上面的 debug test ,會要求創建launch.json,同意即可。主要要選擇go。使用vscode默認生成的json即可{ // 使用 IntelliSense 了解相關屬性。 // 懸停以查看現有屬性的描述。 // 欲了解更多信息,請訪問: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "Launch Package", "type": "go", "request": "launch", "mode": "auto", "program": "${fileDirname}" } ]}
(5) 打斷點,執行debug test
(6) 報錯信息報錯:could not launch process: can not run under Rosetta, check that the installed build of Go is right for your CPU architecture Process exiting with code: 1
方案:1.下載golang 的arm ,且版本要大於1.62.重新安裝dlv (錯誤原因就在於,使用的是之前老版本的dlv,重新下載即可) go get -u github.com/go-delve/delve/cmd/dlv
123456789101112131415161718192021222324252627282930313233343536 基本上按照這些步驟執行下來就可以愉快的使用vscode的debug功能了。不能不說真的強無敵,每一步的變量值都能顯示出來,調試神器啊。不禁想起當年靠打印調試程序的日子,真特么青澀。
敲重點 原文鏈接:https://blog.csdn.net/LJFPHP/article/details/120242148