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
3.安装Git-2.18.0-64-bit.exe
4.安装gocode
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 main import "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
后记
又是一篇长长的博文,只因为自己想要写的详细一些,不过,因为自己经验的原因,不少内容或许不准确或缺失。
因为专注于写这篇博文,结果,午觉没睡,居然还不困!不知道是咖啡的原因还是因为自己的专注?感觉更可能的是后者!
结论:专注者不困——困倦、困惑、困住!
参考链接
0.The Go Programming Language
1.RUNOOB.COM的Go语言教程
2.LiteIDE
3.搭建Go开发及调试环境(LiteIDE + GoClipse) -- Windows篇
4.Go Guru(golang 代码导航工具) 的使用
5.Goclipse 构建的项目下面的代码无法编译至bin文件夹下
6.Windows GoClipse Error
7.Installing Go on Linux, testing fails
8.Guru 是一个导航go 代码的编辑器集成工具
--------0907 0903更新--------
参考链接:[golang note] 环境搭建
在上面的参考链接中,提到了如何配置Eclipse下调试Go程序,发现这是自己本文了缺失的部分,前面还 问安装MinGW做什么?真的是调试用啊!
在参考链接里面提到使用LiteIDE的gbd64.exe来调试,可是,自己使用其调试时失败了:
-使用默认的gdb调试-失败
-使用LiteIDE的gbd64调试-失败
在LiteIDE下有两个调试器debugger——gdb、delve,测试发现两者都可以执行程序调试:
注意,delve是一个golang的调试器,可以进行安装。Eclipse里面是否可以使用它呢?还需dig!参考链接中也有提到它的安装。