在Windows 10中Go语言开发环境搭建:Eclipse+GoClipse
intel core i5-8250u,windows 10家庭中文版,go version go1.11 windows/amd64,
eclipse ide for c/c++ developers photon release (4.8.0),
goclipse 0.16.1(v201607061938),
前言
本文主要介绍自己在windows 10上搭建基于eclipse的go语言开发环境的过程,主要步骤:
1.安装go1.11.windows-amd64.msi
2.下载eclipse cdt(c/c++ development tooling)
3.安装git-2.18.0-64-bit.exe
4.安装
5.安装guru
6.安装godef
7.配置eclipse下go语言开发环境
过程并不是一帆风顺的,期间遇到了一些问题,基本上都解决了——后有详细介绍,至于未被发现的问题,后面遇到了再做深究。
下面是各个步骤的详细介绍。
说明,参考链接0 中的官网并非go语言的 全球官网,而是在 墙内 可以访问的google公司(一家优秀的美国互联网企业)提供的官网。
1.安装go1.11.windows-amd64.msi
在参考链接0(墙内官网)下载了适合自己计算机的安装包,双击即可开始安装。
安装完毕,c:\go目录。
配置环境变量path:安装完毕后,c:\go\bin已经存在于path中了。
go语言命令所在位置:
主要用到go.exe,打开新的终端,执行go --help可以查看go命令的帮助信息:
测试新安装的go命令——编写程序 test01.go 并执行(博客园、notepad++目前对go语言代码的支持不好,所以,下面的代码就是文本粘贴了):
package mainimport "fmt"func main() { fmt.println("hello, go开发!")}
执行go run运行程序(包括编译)——成功!
疑惑:之前执行完毕后,会生产一个 .exe 可执行文件的,怎么这次没有了呢?和设置 环境变量gobin 有关系吗?
上面提到,go语言的命令已经被添加到 环境变量path 中了,相关的 环境变量goroot、gopath 也已经添加了:
疑问:goroot还可以理解,可是,gopath又是什么呢?
gopath下只有一个文件夹src,其中内容如下——那么,这个是做什么用的呢?自己目前还不清楚,需dig:
错误操作:
查看了一些网络资料,里面隐晦地提到gopath下应该有bin目录的,而自己的却没有,但goroot下有bin目录,于是,自己试着将gopath更改为 c:\go\bin(之后又该回 了 %userprofile%\go)。
错误操作:
按照某网络资料的介绍,还添加了一个 gobin 环境变量(值为%goroot%\bin),后来因之遇到了问题——在eclipse运行go程序后,没有在工程目录下找到可执行文件,eclipse提示错误。
eclipse中的错误提示:
可以使用 命令 go env 查看go语言的环境变量:
下面是go语言的主要环境变量的一个简单介绍(博文:搭建windows下的go开发环境):
暂且到这里,关于环境变量的问题,还需要找官文好好看看,后续会补充介绍更清楚详细。
2.下载eclipse cdt
按照 参考链接1 go语言教程 中的介绍,可以使用 eclipse + goclipse插件 搭建继承开发环境(ide)。
但是,教程中没有提到需要使用eclipse ide for c/c++ developers,于是浪费了一些精时——或许是可以的,稍候验证:
下载地址:
http://www.eclipse.org/downloads/packages/
根据自己的计算机选择eclipse ide for c/c++ developers吧!
俺下载得到的是eclipse-cpp-photon-r-win32-x86_64.zip,解压后即可使用——用来开发c、c++程序。
在8月30日,自己尝试使用现有的eclipse ide for java ee developers继续搭建go语言开发环境,也安装了goclipse,可是遇到了问题,就 中断了。
在eclipse的window->preferences下配置go的环境时,出现了异常——可是自己明明安装了go,也配置好了环境变量啊!
此问题今天(9月6日)在eclipse ide for c/c++ developers上也遇到了,多次尝试后问题得到解决。
现在想来,可能的原因和goclipse的版本有关系:goclipse 0.16.1(v201607061938),居然是2016年的!而自己的go安装程序、eclipse都是最新的!
怎么解决的呢?请看本文最后一节:7.配置eclipse下go语言开发环境,问题解决了,就可以用eclipse开发了。
3.安装git-2.18.0-64-bit.exe
安装git for windows,官网:https://gitforwindows.org/。
为何要安装它?因为后面的软件都需要用到 git 的方式进行安装。
步骤:下载、安装。
注意,安装过程中,有些步骤要和windows操作系统匹配。
说明,孤尚未使用过git,也没有在github上注册,预计今天会开始学习。
说明,菜鸟go语言教程提到安装mingw,可自己没有安装也可以做go语言开发,为什么?需dig,和编译、调试有关吧。
说明,在执行这个操作时,步骤1 中配置的gobin还是存在的,指向 c:\go\bin 目录。此环境变量可能和下面4、5、6安装的软件的可执行程序放置位置有关系,需dig。
下面是安装步骤——按照下面图片选择安装后,后面步骤4、5、6都能顺利执行(选择windows有的 或 带有windows字样的选项,对了,安装notepad++):
安装完毕!此时,可以使用git命令了!
环境变量path多了一条:
4.安装gocode
在上面的步骤完成后,参考菜鸟教程,执行下面的命令即可安装gocode:
go get -u github.com/nsf/gocode
安装完毕后,gocode.exe即出现在c:\go\bin中。
没有安装git时的提示:
5.安装guru
打开参考链接8。执行下面的命令:
go get golang.org/x/tools/cmd/guru
go build golang.org/x/tools/cmd/guru
链接居然是来自golang.org的!怎么可以访问呢?可结果就是——可以通过上面的命令安装好guru!
疑问:不知道是否只需要执行第一条命令就可以了,还是两条都执行才安装成功。从gocode的安装来看,只需要执行第一条就可以了。
6.安装godef
执行下面的命令:
go get -v code.google.com/p/rog-go/exp/cmd/godef
结果:
说明,上面的链接来自golang.org,网络资料还显示可以基于github、code.google.com等链接进行安装。
说明,虽然安装了几个软件了,可是,对于为何如此,自己还是不清楚的,需要dig!狠狠地dig!
步骤4、5、6执行完毕后,使用eclipse+goclipse插件开发go项目(程序)所需要的工具 暂时齐备 了!可能还有更多好工具可以安装使用!
为何孤要安装这些软件呢?因为遇到了问题了——在goclipse插件安装到eclipse后,发现其中需要这些工具!
如下图(步骤2最后一张图有些不完整)所示——其中的gofmt是安装了go的安装包就有的:
特别提示,在下图中,gofmt下的use default location默认是选中的,此时无法进行更多配置,需要取消选中才可以,下面最后一步有介绍。
7.配置eclipse下go语言开发环境
安装好goclipse插件后,还无法进行go项目或程序开发,需要在window->preferences-go进行配置。
说明,按照以前使用eclipse的经验,这个步骤其实是可以省略的,goclipse插件可以直接从系统中获取相关的程序的位置。
在前面的工作完成后,打开eclipse的window->preferences-go,显示如下——除了gocode,其它都显示为空:
更可气的是,无法点击go节点,就显示在go->tools界面中,必须要配置,不配置就不让走的样子!
直到自己取消选中gofmt下的use default location (from go installation),之后才可以点击go节点进行其它配置:
点击go节点进行配置:
下面是点击godef下的download时出现的 意外,或许和gobin的设置有关系:
最后的配置——成功,没有错误提示了!
接下来,畅快地使用eclipse开发go项目(程序)吧!期间遇到一些故障,下一篇博文介绍之!
安装软件
go1.11.windows-amd64.msi
eclipse-cpp-photon-r-win32-x86_64.zip
git-2.18.0-64-bit.exe
liteidex34.1.windows-qt5.9.5.zip
后记
又是一篇长长的博文,只因为自己想要写的详细一些,不过,因为自己经验的原因,不少内容或许不准确或缺失。
因为专注于写这篇博文,结果,午觉没睡,居然还不困!不知道是咖啡的原因还是因为自己的专注?感觉更可能的是后者!
结论:专注者不困——困倦、困惑、困住!
参考链接
2.liteide
3.搭建go开发及调试环境(liteide + goclipse) -- windows篇
5.goclipse 构建的项目下面的代码无法编译至bin文件夹下
7.installing go on linux, testing fails
--------0907 0903更新--------
参考链接:
在上面的参考链接中,提到了如何配置eclipse下调试go程序,发现这是自己本文了缺失的部分,前面还 问安装mingw做什么?真的是调试用啊!
在参考链接里面提到使用liteide的gbd64.exe来调试,可是,自己使用其调试时失败了:
-使用默认的gdb调试-失败
-使用liteide的gbd64调试-失败
在liteide下有两个调试器debugger——gdb、delve,测试发现两者都可以执行程序调试:
注意,delve是一个golang的调试器,可以进行安装。eclipse里面是否可以使用它呢?还需dig!参考链接中也有提到它的安装。