内容简介:本环境为:Go + VS Code此篇为Windows环境篇,跨语言学习转GO语言开发,由于刚刚接触,在环境搭建的过程中就遇到了很多问题。网上有很多资料,大体思路能看明白,但是很多都没有很非常完整且详细的描述其中细节,导致过程中踩了不少坑,单独写下这篇经验,旨在介绍跳坑的方法,对于一些很基础的步骤请参考网上资料,基本大同小异。环境变量设置很关键,这一步没有解决好,接下来的步骤都会造成很大的影响,再一个Go插件包安装失败也是个问题,也是个问题。
本环境为:Go + VS Code
此篇为Windows环境篇,跨语言学习转 GO 语言开发,由于刚刚接触,在环境搭建的过程中就遇到了很多问题。网上有很多资料,大体思路能看明白,但是很多都没有很非常完整且详细的描述其中细节,导致过程中踩了不少坑,单独写下这篇经验,旨在介绍跳坑的方法,对于一些很基础的步骤请参考网上资料,基本大同小异。
环境变量设置很关键,这一步没有解决好,接下来的步骤都会造成很大的影响,再一个Go插件包安装失败也是个问题,也是个问题。
下载
我们此次切入的TrueChain区块链项目开发,go语言跨平台做的非常好,此项目goland语言版本需要在1.7+以上,我用的最新的 go version go1.10.3 windows/amd64
下载地址: https:// golang.org/dl/ ,需要搭梯子
注意:不能下载安装包的朋友需要另行搜索下载,网上很多帖子都有镜像下载,这里就不重复整理了。
安装
版本选择,go语言官方提供32位和64位的版本,不过基本都会选择64位的版本。
安装方式,安装包分为压缩版和安装版,区别在于安装版会自动配置环境变量, 坑就在这里了,自动配置环境变量,缺失了对go语言基本项目结构的理解,容易掉坑里面。 所以推荐压缩版本进行安装,或者msi版本安装之后重新配置环境变量。
默认会安装在 C:Go目录下,手动安装可以安装到此目录下,Go目录下有bin、src、doc等子目录,检查程序安装,接下来进行环境变量配置。
环境变量
打开环境变量设置面板,打开路径:(右击)我的电脑 - 属性 - 高级系统设置 - 环境变量,打开环境设置面板,我们直接设置系统变量,全局用户控制,可以根据用户设置环境变量(不推荐)。需要设计的环境变量有好几个,如下:
新增 GOROOT ,go语言的程序安装目录,前面已经安装到了 C:Go 目录,这里直接配置 C:Go 目录。
修改PATH变量,在末尾追加一条 %GOROOT%in
,这样子cmd命令go就可以使用了,打开cmd命令,执行 go version 命令,能输出版本信息,即安装成功。
注意:安装包安装会出现GOBIN环境变量,删除它,PATH变量 %GOROOT%in
,已经实现了GOBIN环境设置,这里会出现坑,可能会出现如下报错。
go get:cannot install cross-compiled binaries when GOBIN is set
环境变量:设置工作目录
go语言需要在环境变量中设置工作目录,工作目录就是存放代码的地方,这个目录需要配置环境变量中,变量名称须设置为 GOPATH ,变量路径值可以设置你任意的工作目录, 需要特别注意的是,go语言代码需要都放在这个工作目录下 ,Window系统不推荐放在系统盘。
新建 GOPATH ,我的go项目工作目录设置为 E:go_projects ,你可以更改为你自己的工作目录,这时候,你需要在设置的工作目录中创建如下文件夹。
. ├── bin ├── pkg └── src
修改PATH变量,我们把工作目录中的bin目录添加进PATH中,追加 %GOPATH%/bin
记录,跟前面配置 %GOROOT%in
是一样的,这样我们就可以直接在工作目录中使用go开发程序了。
bin ,文件夹存放 go install
命名生成的可执行文件
pkg ,文件夹是存在go编译生成的文件。
src ,存放的是我们的go源代码,不同工程项目的代码以包名区分,一般已域名区分,这样子就不会重复,那对于我们一些新开发的项目有没有域名,这时候怎么办?推荐的方式是 %GOPATH%/src/github.com/你的账户名/项目名
,在GitHub你的账户是唯一的,这样就保证了项目
Go从1.1版本到1.7必须设置这个变量,而且不能和Go的安装目录一样。 这个目录用来存放Go源码,Go的可运行文件,以及相应的编译之后的包文件。 所以这个目录下面有三个子目录:src、bin、pkg 从go 1.8开始,GOPATH环境变量现在有一个默认值,如果它没有被设置。 它在Unix上默认为$HOME/go,在Windows上默认为%USERPROFILE%/go。
项目搭建
我们实战的是TrueChian,初链项目是基于水果链论文的工程实现,已这个项目切入区块链的开发。
TrueChain项目搭建,这里推荐我们社区开发小伙伴准备的另外一篇文章。
https:// github.com/truechain/wi ki/blob/master/developer/2.window_env_build.md
项目搭建,在此文中已经有比较详细的描述。
包安装的坑
这里聊一聊这里可能会面临的坑,IDE方面如果VS Code,需要安装go语言的开发扩展包,go项目会依赖一些项目包(插件),如果你已经解决这个问题请忽略以下内容。
VSCode设置
你更改了GOPATH环境变量之后,VSCode如果是在更改之前进行安装的话,这里面又会存在IDE环境变量设置问题
你需要更改这里的go-gopath设置以及go-goroot,更改之后如下:
"go.goroot": "C:\Go", "go.gopath": "E:\go_projects",
安装go插件 工具 包
在 http:// github.com 目录下的goland目录中安装工具包, %GOPATH%srchttp://github.comgolang
git clone https://github.com/golang/tools.git tools
git克隆完成还会在golang目录中多了一个tools目录,里面包含了很多go插件汇总。
这时候,我们需要把tools目录的文件全部拷贝到 %GOPATH%srchttp://golang.orgx ools
目录中
为什么tools插件包需要放置两个路径目录中?
toolscmd中包含了很多的插件,这些插件的归属域名并不是都在 http:// github.com 域名下,有些插件在 http:// golang.org 域名下。
下载tools,进行本地安装,在VS Code执行 install all
安装之后,会提示哪些有些包安装失败,有部分成功(如果全部都失败了,那可能需要检测下环境变量了) 。
go install github.com/ramya-rao-a/go-outlinego install github.com/acroca/go-symbolsgo install github.com/cweill/gotests/gotests
检查包是否安装成功
在 %GOPATH%in
目录下检查是否安装有正确的包,如下图:
跑起来,还是报错
项目初始化 -->运行
修改launch.json进行初始化,还有有错误,如下图:
这个错误需要删除缓存数据,
C:Users你的用户名AppDataRoamingEthereum Ethereum:这个是对应的项目目录,如果clone不是这个版本,对应的目录名称是不一样的,删除即可
最后,按照配置运行起来
以上所述就是小编给大家介绍的《TrueChain搭建开发环境我趟过的坑》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Hyperledger Fabric环境搭建及环境测试(Mac环境)
- CV 环境很重要,各种环境搭建大全
- Openstack Queens 环境搭建(一)环境准备
- Python 环境搭建
- 1 - 搭建开发环境
- 搭建 Android 内核环境
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。