如圖所示术裸,VS Code
斷點調(diào)試Golang
時候,彈出提示
點擊Open launch.json
厕鹃,在env
里面添加go.gopath
路徑
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch",
"type": "go",
"request": "launch",
"mode": "auto",
"program": "${fileDirname}",
"env": {
"go.gopath": "自己的路徑" // 打開終端疾牲,輸入命令 go env 可以查看GOPATH路徑
},
"args": []
}
]
}
查看自己Golang
項目的工作目錄踪旷,就是整個項目所在目錄的曼氛,如我的項目結(jié)構(gòu)如下圖所示:
再把program
的值修改為以下
"program": "${workspaceRoot}/src"
為何把program
的值從${fileDirname}
改為${workspaceRoot}/src
, 原因是:
1、VS Code
會根據(jù)program
所描述的路徑來運行go文件
令野;
2舀患、一個項目只能有一個main函數(shù)
,打斷點的地方不一定是main.go
文件彩掐;
總的來說构舟,如果program
的值為${fileDirname}
,我點擊Tool.go
文件堵幽,再點擊調(diào)試按鈕狗超,那么VS Code
就會運行Tool文件夾
下所有go文件
,fileDirname
從字面意義就能得知是文件所在的文件夾名字
朴下,Tool.go
文件所在文件夾名字就是Tool
努咐,${fileDirname}
現(xiàn)在就是指運行Tool文件夾
內(nèi)所有go 文件
,但是我main函數(shù)
在main.go
里面殴胧,而main.go
在src文件夾
里面渗稍,所以調(diào)試是不可能運行起來的,一樣會彈出Failed to continue: Check the debug console for details.
提示团滥,(當(dāng)然竿屹,如果你不嫌麻煩,先點擊main.go
再點擊調(diào)試按鈕灸姊,也能跑起來) 而把${fileDirname}
替換為${workspaceRoot}
拱燃,并且加上工程所在目錄,就是指我運行的是src文件夾
下所有go文件
力惯,這樣main.go
文件也會執(zhí)行到碗誉,就不會像之前一樣召嘶,點擊其他go文件
,運行就出錯
還有一點就是進行調(diào)試時候哮缺,輸出的信息是在底部的DEBUG CONSOLE
里面的打印弄跌,而不是我們正常的OUTPUT
里面打印