windows下用eclipse+goclipse插件+gdb搭建go語言開發調試環境


 windows下用eclipse+goclipse插件+gdb搭建go語言開發調試環境

http://rongmayisheng.com/post/windows%E4%B8%8B%E7%94%A8eclipsegoclipse%E6%8F%92%E4%BB%B6gdb%E6%90%AD%E5%BB%BAgo%E8%AF%AD%E8%A8%80%E5%BC%80%E5%8F%91%E8%B0%83%E8%AF%95%E7%8E%AF%E5%A2%83
 

目前go語言在window或者linux操作系統上,最好的go語言開發調試環境都是由eclipse+goclipse插件+gdb搭建的。如果你還沒有搭建好go語言的開發環境,請參考這篇博文《windows下Go語言的安裝和開發環境搭建》

一般大家用eclipse都是開發java,如果要開發go,那就得安裝goclipse插件了,這樣才能有代碼高亮、自動編譯、聯想提示、跳轉到函數定義等豐富功能;如果還想要調試的功能,就還得有gdb;如果你還想引入github上的開源庫,那還需要git客戶端。下面一一介紹如果安裝和使用:

安裝goclipse

在安裝goclipse前,需要事先安裝好jdk8。goclipse下載地址:http://goclipse.github.io/releases/ ,由於我朝的高牆存在,可能這個地址訪問不穩定,甚至有的人根本訪問不了,建議參考goclipse官網的文檔,把releases目錄下的內容下載到本地后解壓,使用本地的路徑作為url來安裝,比如:file:///D:/goclipse.github.io-master/releases/,搞java的安裝eclipse插件應該比較熟悉,安裝過程也比較簡單,直接點下一步,接受,yes,重啟eclipse就可以了(可能由於國內網速的原因,安裝過程可能比較長)。如果安裝成功,可以在Window–>Preferences里面左邊的樹形菜單里看到Go,點Go,然后在右邊設置GOROOT的路徑為go的安裝目錄即可,下面的幾個Go tool的路徑會被自動識別到。此時應該看到如下的效果:

瀏覽到go的安裝目錄

下面創建一個go項目來檢驗一下,在菜單欄如下操作File–>New–>Other–>選擇Go–>選擇Go Project–>Next–>給項目取個名字(比如gotest)–>Finish,創建成功,然后在項目的src目錄下創建一個帶main入口函數的源文件test。

配置gbd

配置gbd

創建帶main函數的源文件

創建帶main函數的源文件

然后編輯代碼看看高亮和代碼提示的效果

golang代碼聯想

golang代碼聯想

上面的效果不錯吧,goclipse現在已經在方法提示、autocomplete和查看方法變量聲明等功能方面支持得很好了,而且這些功能不用額外配置,因為goclipse中包含了一個gocode(用於Go語言的自動補全工具),在安裝goclipse的時候會自動安裝上gocode(比如:我的gocode在D:\software\green_software\eclipse-j2ee\eclipse\plugins\com.googlecode.goclipse.gocode_0.7.6.v439\tools\windows_amd64),所以gocode一般不用額外的安裝和配置,只需要勾選讓其在eclipse啟動時自動啟動即可,配置路徑為:Window->Perferences->Go->Gocode,這樣eclipse在啟動后,你可以在Window資源管理器的進程列表中看到有gocode這個進程。如下圖:

goclipse的gocode配置

goclipse的gocode配置

如果你沒有gocode,或者gocode沒有啟動,或者你想用最新的gocode,那么你可以在啟動eclipse之前使用如下的命令手動啟動gocode:

gocode.exe -s -sock=tcp

這樣你就可以在eclipse中使用點號來聯想方法和字段,以及用alt+/來自動補全方法和字段。

運行這個程序有兩個辦法,一個是cd到這個工程的bin目錄下,執行下面自動編鏈接好的exe文件,另一個是在eclipse上右鍵main函數所在的源文件–>Run As–>Run Go Application,即可。

我平時在使用過程中,發現一個奇怪的問題,就是自己的代碼不能自動編譯也不能運行了,研究一番才發現是工程的src目錄配置不對,理論上這個配置不需要自己手動配的,但是如果你也碰到這種情況,你可以看看這個src目錄是否配置正確了,見圖你就知道了:

新引入的go項目后檢查項目配置

新引入的go項目后檢查項目配置

安裝GDB

想一想,如果寫代碼不能調試,那就只能通過fmt.Println(“xxx”)這種方式,那是多么痛苦啊,讓自己的開發環境可以動態的調試是很有必要的。下面介紹下,如何安裝和配置GDB,讓eclipse支持go語言代碼的挑食的。

由於go編譯器編譯出來的可執行程序是按照gdb的標准的,所以目前調試go語言代碼必須要有gdb,需要在windows上裝一個,linux上裝gdb很容易,但是windows上比較麻煩一下,比較常用的做法是裝MinGW,然后用里面的gdb。但是我推薦另一個做法:

下載另一個自帶了gdb的go語言集成開發軟件liteide(綠色軟件,解壓即可),里面的bin目錄下有gdb.exe和gdb64.exe,這兩文件前者用於32位操作系統,后者用於64位操作系統。

然后把你操作系統對應的那個gdb配置到goclipse插件里面,操作如下:Window–>Preferences–>打開Go節點–>選擇Debug,然后設置GDB,我的操作是64位的,所以選擇了gdb64.exe。如圖:

配置gdb

配置gdb

這樣就ok了,現在可以去試試,在代碼里設斷點看效果了。(當然現在這個debug功能還沒有那么完善,但是大部分的情況都是可以動態查看變量的值的,某未及之處只能通過輸出的方式來做了。)

配置GOPATH變量關聯go的SDK源碼

如果不使用eclipse+goclipse,而使用記事本寫代碼的話,就必須要配置gopath,盡管使用goclipse后可以不設置GOPATH環境變量,但是那樣就不能在eclipse里面直接關聯查看go的源碼了。如果想讓自己的代碼中選擇一個函數,然后按F3(或者按住ctrl點某個函數)就能看到源碼的話(eclipse常用的關聯代碼的功能),就需要給goclipse配置GOPATH,配置好了以后你可以按住ctrl點某個函數,就可以跳到go的源碼中直接查看源碼的實現,這個對學習go很有幫助,強烈推薦大家使用。配置效果如圖:

在eclipse中設置gopath

在eclipse中設置gopath

配置完了以后,就可以看到Project Explorer里面多出了一個GOROOT節點,這個節點下的都是go的源碼,沒事多看看很有好處!

用git來下載第三方庫

由於現在github非常火,很多開源愛好者都把自己的代碼托管到了github、bitbucket、google code上,go語言本身也是開源。想學go語言的同學難免會去這些地方看其他人寫的好的代碼,不過最好是把這些代碼下載自己把玩一番。要下載這些代碼就需要使用git客戶端,它可以讓你用簡單的命令就可以把代碼下載下來,並打包好。這樣你就可以方便的使用了。下面介紹下git客戶端的下載和安裝:

git的windows客戶端下載地址為:http://code.google.com/p/msysgit/downloads/list?q=full+installer+official+git

安裝過程中有一個步驟需要注意的,這一步可以讓你在dos命令行中使用git命令,這樣比較方便一點,如圖:

git安裝,讓你的git命令可以在windows控制台里使用

git安裝,讓你的git命令可以在windows控制台里使用

這時候你就可以在windows命令行中使用git命令了,現在試試看看好用不,我在bitbucket上有個開源的工具包,以這個作為例子試試看~~

先cd到你的工程的src目錄下,然后鍵入這個命令:go get -u bitbucket.org/weager/utils

這個命令中的-u可以在你曾經下載過這個包時,自動更新這個包。此時,應該能在src目錄下看到bitbucket.org目錄,這目錄里面有一個weager目錄,這個目錄下就是utils包的代碼了。

然后運行打包命令:go install bitbucket.org/weager/utils

此時會在pkg目錄下產生於src相同的目錄,在utils目錄下會有一個utils.a文件,這就是打包后生成的文件。見圖:

go項目目錄結構以及下載的包

go項目目錄結構以及下載的包

下載了包以后,就可以在你的工程中使用這個包了,比如:

go語言代碼中引入第三方庫代碼演示

go語言代碼中引入第三方庫代碼演示

 

 

到此為止,go語言的開發環境完成了,可以開始開發了,good luck :)

Reference

eclipse及其他IDE的go語言開發環境搭建

goclipse安裝

Post Footer automatically generated by wp-posturl plugin for wordpress.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM