windows下用eclipse+goclipse插件+gdb搭建go语言开发调试环境
windows下用eclipse+goclipse插件+gdb搭建go语言开发调试环境
目前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项目来检验一下,在菜单栏如下操作File–>New–>Other–>选择Go–>选择Go Project–>Next–>给项目取个名字(比如gotest)–>Finish,创建成功,然后在项目的src目录下创建一个带main入口函数的源文件test。
配置gbd
创建带main函数的源文件
然后编辑代码看看高亮和代码提示的效果
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配置
如果你没有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项目后检查项目配置
安装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
这样就ok了,现在可以去试试,在代码里设断点看效果了。(当然现在这个debug功能还没有那么完善,但是大部分的情况都是可以动态查看变量的值的,某未及之处只能通过输出的方式来做了。)
配置GOPATH变量关联go的SDK源码
如果不使用eclipse+goclipse,而使用记事本写代码的话,就必须要配置gopath,尽管使用goclipse后可以不设置GOPATH环境变量,但是那样就不能在eclipse里面直接关联查看go的源码了。如果想让自己的代码中选择一个函数,然后按F3(或者按住ctrl点某个函数)就能看到源码的话(eclipse常用的关联代码的功能),就需要给goclipse配置GOPATH,配置好了以后你可以按住ctrl点某个函数,就可以跳到go的源码中直接查看源码的实现,这个对学习go很有帮助,强烈推荐大家使用。配置效果如图:
在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控制台里使用
这时候你就可以在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语言的开发环境完成了,可以开始开发了,good luck
Reference
原创文章:windows下用eclipse+goclipse插件+gdb搭建go语言开发调试环境,转载请注明:转载自戎码一生
Post Footer automatically generated by wp-posturl plugin for wordpress.
windows下用eclipse+goclipse插件+gdb搭建go语言开发调试环境的更多相关文章
- 在windows下用eclipse + pydev插件来配置python的开发环境
在windows下用eclipse + pydev插件来配置python的开发环境 一.安装 python 可以到网上下个Windows版的python,官网为:https://www.python. ...
- [z]Windows 下基于 Eclipse 的可视化远程 Linux C/C++ 开发环境搭建
http://blog.csdn.net/lostaway/article/details/8086056 1.简介 Windows 下远程 Linux 开发工具,比较著名的就是 WinGDB 和 M ...
- [转]MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题)
MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题) 网上有一篇shangdong_chu网友写的文章介绍如何在Eclipse上配置M ...
- 在Windows下用Eclipse+CDT+MinGW搭建C++开发平台
本文提供了在Windows下用Eclipse+CDT+MinGW搭建C / C++开发平台的方法, 测试平台为Windows XP Sp2 CHS. 以下软件均为Windows平台下的版本. 1. ...
- eclipse下使用cygwin的方法(Windows下用eclipse玩gcc/g++和gdb)
明天就回国了,今晚回国前写写如何配置eclipse和CDT.这个配置方法网上讨论不是很多,可能用的人少,毕竟Windows上写C++程序多数喜欢VS,即使写的是Linux程序,很多人仍然会用VS(说只 ...
- 干货分享:在Windows下使用Visual Studio搭建C语言开发环境
前言:本文将教大家如何使用 VIsual Studio Code 搭建 C 语言开发环境,包括使用 VS Code 如何编译和调试 C 语言程序,需要 用到的工具有 Visual Studio Cod ...
- windows下使用eclipse调试C程序
一.环境描述 Eclipse IDE for C/C++ Developers version 4.4.0 MinGW gcc/g++ version 4.8.1;gdb version 7.6.1 ...
- windows下使用火狐浏览器插件AutoProxy+MyEnTunnel+SSH访问海外站点(转)
windows下使用火狐浏览器插件AutoProxy+MyEnTunnel+SSH访问海外站点 平时需要查阅一些技术资料,光走VPN太浪费流量,所以这儿教大家一种使用火狐浏览器的插件 AutoPr ...
- Windows下为 Eclipse 配置 C/C++ 编译环境(转)
1.Eclipse及CDT的安装 CDT的全称是C/C++ DevelopmentTools,CDT使得Eclipse能够支持C/C++的开发.直接下载 eclipse CDT 集成版 下载地址:ht ...
随机推荐
- IOS 基础-define、const、extern、全局变量
这里介绍一下define.const.extern的用法.优劣以及要注意的地方. 1.define 宏define是定义一个变量,没有类型信息.define定义的常量在内存中有若干个拷贝. defin ...
- 这里有个坑---entity为null的问题
这里有个坑,最近加班赶个项目,忽然遇到个这个坑,先记录下来,纯当自己提高.---------每一个遇到的坑总结后都是一比财富. 我们在做项目是会使用ajax返回结果,在返回结果的时候一般选择json数 ...
- Oracle日期时间函数大全
ORACLE日期时间函数大全 TO_DATE格式(以时间:2007-11-02 13:45:25为例) Year: yy two digits 两位年 显示值:07 yyy three digits ...
- Atiti attilax主要成果与解决方案与案例rsm版
Atiti attilax主要成果与解决方案与案例rsm版 1. ##----------主要成果与解决方案与 参与项目1 ###开发流程系列1 ###架构系列 (au1 ###编程语言系列与架构系 ...
- paip.解决access出现 -2147467259 无效的参数量
paip.解决access出现 -2147467259 无效的参数量 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http: ...
- 使用python原生的方法实现发送email
使用python原生的方法实现发送email import smtplib from email.mime.text import MIMEText from email.mime.multipart ...
- C#打开新页面
最常用的页面跳转(原窗口被替代):Response.Redirect("XXX.aspx"); 利用url地址打开本地网页或互联网:Respose.Write("< ...
- viewpage listview gridview加载本地大图多图OOM处理办法
很少上博客园写东西了. 最近在写公司项目,由于需要加载本地相册通过viewpager方式来加载, 最后发现直接进入界面就OOM了. 经过几天的整理最终搞定. 现在将加载本地和加载网络图片的缓存工具类贴 ...
- c# BlowFish 高速 对称加密
BlowFish 高速 对称加密 string key = "this is my key"; BlowFish algo = new BlowFish(key); string ...
- 第五章 运输层(UDP和TCP三次握手,四次挥手分析)
序言 通过这章,可以知道其实三次握手和四次挥手其实真的好简单,通过这章的学习,我相信你也会同样的认为,以后在也不需要听到别人问三次握手的过程而自己一脸懵逼了,觉得人家好屌,其实也就是他懂你不懂,仅 ...