Golang學習筆記-IDE安裝指南
引言
上篇Golang學習筆記-環境搭建指南已經講解了如何搭建Golang開發環境,並寫了一個Go程式【Hello,world】,但是寫程式碼沒有一個好用的IDE,沒有語法高亮,自動補全,格式調整,查詢函式等功能,想必也會令大家抓狂吧,筆者以前是做Java和.Net開發的,經常用的IDE有Eclipse、IntelliJ IDEA和Visual Studio,其中Eclipse和IntelliJ IDEA能安裝很多外掛,自然想到是否能在Eclipse和IntelliJ IDEA上安裝支援Go語言開發的外掛,搜一下外掛還真有,廢話不多說,直接進入IDE安裝過程吧。
IntelliJ IDEA安裝Go語言外掛
首先你的安裝好IntelliJ IDEA,具體安裝過程這裡不表,不懂請百度,筆者的IDEA版本是2017.1.5
點選【File】-【Settings】
選擇【Plugins】-【Install JetBrains plugin…】
輸入【go】,選擇【Go Languages】,然後點選【Install】,需要注意的是,這裡只支援Go 1.9版本,筆者安裝的是1.11版本,使用該外掛不相容。
安裝完成後重啟IDEA
重啟之後選擇【File】-【New】-【Module】
現在能看到能建立Go語言專案了,但是我們這裡還需要配置SDK,選擇Go的安裝目錄
接下來需要設定GOPATH,其實就是Go的工作目錄
因為筆者安裝的是1.11版本的Golang,所以沒有具體測試該外掛是否可用,其實JetBrains針對Go語言專門開發了一款IDE,GoLand
安裝GoLand
首先進入GoLand下載頁下載最新版本的IDE,筆者下載的是2018.2.2版本,下載完成後直接安裝,安裝好了之後輸入license就可以開始使用了
如果你之前使用IntelliJ IDEA開發Java,你會發現GoLand快捷鍵和IntelliJ IDEA的一樣,上手非常容易。
LiteIDE
LiteIDE 是一款簡單、開源、跨平臺的 Go 語言 IDE。在soureceforge上提供了下載地址
筆者下載的是34.1的Windows版本,下載完成後直接解壓即可,解壓後雙擊bin目錄下的liteide.exe,開啟後先設定編輯環境,因為我使用的64位作業系統,所以環境選擇win64,然後選擇【工具】-【編輯當前環境】
設定好GOROOT為Golang的安裝目錄
然後設定GOPATH,選擇【工具】-【管理GOPATH】
設定好了之後就可以開始使用了,自動補全,格式調整等功能都有
Eclipse安裝goclipse外掛
可以參考官方安裝指導文件,開啟文件就會看到幾條限制
- Java虛擬機器需要8以上;
- Eclipse需要4.6(Neon)以上,筆者使用的是4.7(Oxygen);
- CDT 需要9.0以上(CDT 可以是提前安裝好,也可以在安裝goclipse時進行安裝)
注意看官方文件最下發,針對中國使用者寫的,為了防止由於GFW存在導致連線不上、超時或網速慢的問題,推薦使用離線安裝。
- 首先下載goclipse離線包,下載完成後解壓。
- 然後開啟Eclipse,依次點選 【Help】-【Install New Software...】-【Add】,填寫外掛描述,並點選 【Local】選中上述下載的資源包解壓後的【release】目錄,點選【OK】
如果已安裝了 CDT 則這裡只選 GoClipse 一項即可,如未安裝,則需要選擇前三項:CDT Main Features、CDT Optional Features 和 GoClipse,然後一直 Next 直到安裝結束
安裝完成後重啟Eclipse,開啟後就是配置,選擇【Window】-【Performances】-【Go】,設定GOROOT,即Go的安裝目錄,設定完成後一定要先點選【Apply】應用。
然後選擇【Go】-【Tools】,設定gocode、guru、godef,直接點選Download,會出現彈出框,直接點選【OK】即可
這樣安裝發現guru無法下載,因為GFW導致我們無法訪問golang.org這個站點,Eclipse console視窗返回的訊息如下:
>> Running: "C:\Program Files\Go\bin\go.exe" get -u github.com/nsf/gocode
>> Running: "C:\Program Files\Go\bin\go.exe" get -u golang.org/x/tools/cmd/guru
>> Running: "C:\Program Files\Go\bin\go.exe" get -u github.com/rogpeppe/godef
package golang.org/x/tools/cmd/guru: unrecognized import path "golang.org/x/tools/cmd/guru" (https fetch: Get https://golang.org/x/tools/cmd/guru?go-get=1: dial tcp 216.239.37.1:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.)
^^^ Terminated, exit code: 1 ^^^
^^^ Terminated, exit code: 0 ^^^
^^^ Terminated, exit code: 0 ^^^
我們可以下載guru原始碼,然後使用 go build 指令編譯得到對應的 .exe 檔案。
首先把整個工程下載下來,然後在Go的安裝目錄的【src】目錄下新建多級目錄【 golang.org\x\】,接著將下載下來的zip包解壓在【src\golang.org\x\】目錄下,並將資料夾名稱由【tools-master】修改為【tools】
然後在Go安裝目錄的 bin 目錄下開啟cmd命令列,執行如下命令
go build golang.org/x/tools/cmd/guru
執行成功後會在【bin】目錄下生成【guru.exe】檔案,我配置的guru工具的目錄是【D:\Go\bin\guru.exe】,所以我將這個檔案剪下到【D:\Go\bin\】目錄下
至此,所有的配置就都完成了,下面就可以測試了,新建一個Go工程,還是Hello world程式碼,可以看到自動補全這些功能都有,右鍵-【Run AS】-【Go Application】試試,可以看到正確輸出Hello, World!
這裡需要注意的是src下面一定要有一個main包
總結
- IntelliJ IDEA暫時不支援Go 1.9以上版本,所以被排除在外,估計以後也不會支援了,因為JetBrains推出了GoLand;
- GoLand對於以前使用IntelliJ IDEA開發的Java的程式猿來說使用起來不會陌生,各種快捷鍵一樣,並且支援語法高亮、自動補全、斷點等功能,使用起來非常方便;
- LiteIDE非常輕便,並且也支援語法高亮、自動補全、格式自動調整等功能,但是筆者感覺斷點不方便,不支援單擊或雙擊打斷點,需要游標移動到某一行,然後點選斷點按鈕,其他的暫時沒有發現,等使用一段時間了再補充;
- Eclipse安裝外掛比較麻煩,但是使用起來很方便,基本和開發Java差不多;
但是筆者感覺還是GoLand最好用。
相關文章
- golang學習筆記(1):安裝&helloworldGolang筆記
- 學習筆記:Eclipse IDE for javaEE 64位下載安裝筆記EclipseIDEJava
- golang 學習筆記Golang筆記
- RabbitMQ學習筆記-安裝MQ筆記
- Docker安裝(學習筆記一)Docker筆記
- Mysql學習筆記(安裝篇)MySql筆記
- matlab學習筆記一:安裝Matlab筆記
- goLang學習筆記(一)Golang筆記
- goLang學習筆記(二)Golang筆記
- goLang學習筆記(三)Golang筆記
- goLang學習筆記(四)Golang筆記
- 【學習筆記】Golang 切片筆記Golang
- GOLang 學習筆記(一)Golang筆記
- golang 學習筆記1Golang筆記
- 《JAVA學習指南》學習筆記Java筆記
- Flutter學習筆記 - 安裝,映象,配置Flutter筆記
- Linux 學習筆記 - 軟體安裝Linux筆記
- Redis學習筆記【01】 - 安裝RedisRedis筆記
- Redis安裝與配置(學習筆記一)Redis筆記
- Golang學習筆記之方法(method)Golang筆記
- Golang學習筆記-1.6 函式Golang筆記函式
- Golang學習筆記(1):包管理Golang筆記
- 【Flutter 學習筆記一】Mac OS 安裝 FlutterFlutter筆記Mac
- Docker 學習筆記-基本概念與安裝Docker筆記
- 學習筆記:openstack實驗環境安裝筆記
- React入門指南(學習筆記)React筆記
- Go 入門指南學習筆記Go筆記
- golang學習筆記(二)—— 深入golang中的協程Golang筆記
- Golang學習筆記(一):命名規範Golang筆記
- 《Golang學習筆記》error最佳實踐Golang筆記Error
- TypeScript學習筆記—安裝與基礎型別TypeScript筆記型別
- Nacos 學習筆記:安裝執行初體驗筆記
- elasticsearch學習筆記二:相關軟體安裝Elasticsearch筆記
- Golang 學習筆記八 錯誤異常Golang筆記
- Golang學習筆記(十九):Channel初步接觸Golang筆記
- Golang 學習筆記——tun/tap 程式設計Golang筆記程式設計
- 【區塊鏈學習】《區塊鏈學習指南》學習筆記區塊鏈筆記
- 裝飾器學習筆記筆記