VSCode1.4 搭建Golang的開發除錯環境(遇到很多問題)
浪費我一天時間! 唉唉唉唉唉~
下載包的位置 : http://golangtc.com/download
386 指32位系統 amd64 指64位系統
還沒有發現有什麼區別!
1、 liteIDE
2、Sublime Text 2
3、Google Go language IDE built using the IntelliJ Platform
4、VS Code (強烈推薦)
真的浪費了我好長時間啊!!!!!!!!!!
如果不是安裝到預設路徑將需要 手動配置 環境變數!
配置環境變數的批處理(好像不對!) 妹的,官網訪問不了,網上各種亂!,沒辦法,只能重灌Go 到預設路徑然後看都有什麼環境變數的設定!!!!!
GOPATH的作用是告訴Go 命令和其他相關工具,在那裡去找到安裝在你係統上的Go包。
GOPATH是一個路徑的列表,一個典型的GOPATH設定如下,類似PATH的設定,Win下用分號分割:
比如 VSCode 下就會安裝到這裡:
這款外掛的特性包括:
• Colorization 程式碼著彩色
• Completion Lists 程式碼自動完成(使用gocode)
• Snippets 程式碼片段
• Quick Info 快速提示資訊(使用godef)
• Goto Definition 跳轉到定義(使用godef)
• Find References 搜尋參考引用(使用go-find-references)
• File outline 檔案大綱(使用go-outline)
• Workspace symbol search 工作區符號搜尋(使用 go-symbols)
• Rename 重新命名(使用gorename)
• Build-on-save 儲存構建(使用go build和go test)
• Format 程式碼格式化(使用goreturns或goimports或gofmt)
• Add Imports 新增引用(使用 gopkgs)
• Debugging 除錯程式碼(使用delve)
::新增環境變數GO
@echo off
echo 新增GO環境變數
set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment set evname=GOROOT set gorootpath=E:\Go reg add "%regpath%" /v %evname% /d %gorootpath% /f set evname=GOPATH set gobinpath=E:\Go\GOPATH reg add "%regpath%" /v %evname% /d %gobinpath% /f pause>nul
安裝目錄清單
你的 Go 安裝目錄($GOROOT)的資料夾結構應該如下所示:
README,AUTHORS,CONTRIBUTORS,LICENSE
• \bin 包含可執行檔案,如:編譯器,Go 工具
• \doc 包含示例程式,程式碼工具,本地文件等
• \include 包含 C/C++ 標頭檔案
• \lib 包含文件模版
• \misc 包含與支援 Go 編輯器有關的配置檔案以及 cgo 的示例
• \pkg\os_arch 包含標準庫的包的物件檔案(.a)
• \src 包含原始碼構建指令碼
• \src\cmd 包含 Go 和 C 的編譯器和命令列指令碼
• \src\lib9 \src\libbio \src\libmach 包含 C 檔案
• \src\pkg 包含 Go 標準庫的包的完整原始碼(Go 是一門開源語言)
接下來主要說 : VSCode
然後 VSCode 開啟使用者配置 settings.json:
"go.buildOnSave": true,"go.lintOnSave": true,"go.vetOnSave": true,"go.buildTags": "","go.buildFlags": [],"go.lintFlags": [],"go.vetFlags": [],"go.coverOnSave": false,"go.useCodeSnippetsOnFunctionSuggest": false,"go.formatOnSave": true,"go.formatTool": "goreturns","go.goroot": "C:/Go",// 預設MAC下/usr/local/go, WIN下C:/Go "go.gopath": "C:/Go/GOPATH",// 把需要的外掛和工具安裝到這裡,路徑可以自己定 "go.gocodeAutoBuild": false
新建一個 test.go 檔案 新增程式碼
// 沒有標頭檔案 // 每個原始檔都屬於一個包 package main // 匯入標準庫或第三方庫 import "fmt" // 程式入口 main函式 func main() { fmt.Println("Hello world!"); }
然後 VSCODE 會提示
點選 Install All 就行了
如果想重試 就重啟 VS Code 然後 開啟哪個 .go 檔案
點選哪個 提示 然後 在點選 Install 按鈕安裝。
其實執行的是下面9個命令: (可以自己在Cmd中執行 或者 .bat 批處理)
go get -u -v github.com/nsf/gocode go get -u -v github.com/rogpeppe/godef go get -u -v github.com/golang/lint/golint go get -u -v github.com/lukehoban/go-find-references 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
可能是因為 被牆的問題吧! 比如 golang.org 這個網站都訪問不了,肯定不能下載
現在失敗是不可以的,所以 直接克隆所有 工具就完了!
解決:
1、 到 工具的 路徑下看看
是沒有 golang.org 資料夾的!
這個 lint 包是有的, 但是沒有 對應的 lint.exe 檔案
在 cmd 下 執行go install github.com/golang/lint/golint
發現了原因 : 需要以來 golang.org 網站。
同時, 圖片也告訴了我們玄機!
先新建 路徑, 然後在下載 Tools 拷貝到這個路徑下 !
在命令列中執行 "git clone https://github.com/golang/tools.git
"(需要提前安裝git)
或者 下載壓縮包 : https://github.com/golang/tools
把克隆下來的tools資料夾 移動到 C:\Go\GOPATH\src\golang.org\x
檔案中
不要執行下載命令, 直接執行下面的命令安裝吧!
go install github.com/golang/lint/golint go install sourcegraph.com/sqs/goreturns go install golang.org/x/tools/cmd/gorename go install github.com/newhook/go-symbols go install golang.org/x/tools/cmd/guru
go install 其他你想要的內容。。。。。
有這9個就對了
2、 這個解決過程是很煩的, 最好當然是直接翻牆了!!!!!!因為是谷歌的東西
最後的主題: 執行 Go 程式 , 除錯:
在要 除錯的時候 如果 提示
在命令列中執行“go get -u -v github.com/derekparker/delve/cmd/dlv”。好了,到此就可以除錯了。
(注: 這個命令沒有安裝進度顯示, 一直卡在那,以為出現什麼問題, 可能是包太大了,而且我網速只有8kb/s,我以為是沒有成功, 需要很長時間,但是我沒有等, 跟安裝上面5個相似
git clone https://github.com/derekparker/delve.git
或者是 下載 .zip 檔案
然後
go install github.com/derekparker/delve/cmd/dlv
我除錯的時候會報錯:
所以就 命令列測試: 編譯並執行 golang.go 這個程式碼,成功了!
還是看了一下這個外掛的文件, 是路徑的問題, 因為我這個 golang.go(裡面標識這是 main包, 正常的話應該是放在根目錄下的, 但是我當時就是隨便建立了一個) 檔案所在位置,不是開啟的這個專案的根目錄下。
找到 launch.json 修改:
GOPATH 資料夾下載地址:連結: https://pan.baidu.com/s/19NHPP0-eiwqt7Isv-2kreQ 提取碼: 4fx9
需要的話直接下載!!!!!!
到此這篇關於VSCode1.4 搭建Golang的開發除錯環境(遇到很多問題)的文章就介紹到這了,更多相關VSCode1.4 搭建Golang內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!