使用Jetbrains的Gogland IDE阅读Consul源码

IDE专业户 Jetbranins 为Go语言新推出了一款IDE, 名叫 Gogland, 目前还处于 preview 版本,但是已经能正常使用了(https://www.jetbrains.com/go/)。IDE强大的定义跳转功能可以给我们的代码阅读提供极大的便利。本文介绍如何配置Gogland来阅读Consul代码,并不对源码本身做分析。

创建项目目录

通过命令行创建项目目录consul, 切换到该目录下,克隆项目代码:

mkdir consul
cd consul
git clone git@github.com:hashicorp/consul.git src/github.com/hashicorp/consul --depth=1

这里我们利用 git clone命令自动创建好了go项目的目录结构,即src/github.com/hashcorp/consul

项目导入

打开Gogland,选择”open”, 找到刚刚创建的consul/目录,点OK:
这里写图片描述

项目打开后,由于 consul/目录并不在GOPATH下,因此会出现很多错误。这里我们并不需要”污染”我们全局的GOPATH,可以通过IDE设置仅对该项目有效的GOPATH:
菜单栏目点击 Gogland-EAP –> Preferences, 找到go标签下的gopath节点,在右侧Project GOPATH中指定项目目录:
这里写图片描述

确定以后,IDE依然提示有一些编译错误,这是因为consul的一些依赖没有被下载下来。具体依赖可以在GNUmakefile中找到:

go get github.com/elazarl/go-bindata-assetfs/...
go get github.com/jteeuwen/go-bindata/...
go get github.com/mitchellh/gox
go get golang.org/x/tools/cmd/cover
go get golang.org/x/tools/cmd/stringer

执行完这些go get后编译错误可完全消息,此时就能使用IDE定义跳转功能了。

通过IDE运行项目

点击菜单中的 Run –> Edit Configurations, 配置如下图:
这里写图片描述

注意 Run kind 要选择 Package, Package path 就是项目的包名。
完成以后就能直接通过IDE运行、调试项目了。

温馨提示:先在命令行执行一次 go install, 能大大加快以后每次从IDE运行的编译速度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值