千里之行始于足下,开始 Go 语言学习之旅前,首先要搭建好本地开发环境,然后就可以放心大胆瞎折腾了.

Go 的环境安装和其他语言安装没什么特别注意之处,下载安装包下一步下一步直到完成,可能唯一需要注意的就是 $GOPATH 环境变量的设置问题.

不过,简单起见,目前采用默认配置,等到比较熟悉 Go 语言时候再自定义设置也不迟,因此采用喜闻乐见的傻瓜式安装方式吧!

Go 下载安装

由于众所周知的原因,谷歌被墙,因此 Go 的国外官网无法访问,好在已提供 Go 的中国官网可以正常访问.

除了官网下载,也可以从第三方网站下载,一般速度比较快,下面就以 Windows 系统为例演示下载安装过程.

双击下载文件 go1.12.7.windows-amd64.msi 按照提示一直下一步直到安装完毕.

默认情况下 Go 安装到 C:\Go 目录,同时设置了 $GOPATH 环境变量.

如果安装时没有采用默认配置而是自定义安装位置,那么应该自行设置后续相关环境变量.

默认情况下,安装 Go 语言后新增了 GOPATHPATH 用户系统变量,同时修改了系统环境变量PATH .

默认情况下,Go 安装成功后发生了如下改变:

  • 增加了用户变量: GOPATH=%USERPROFILE%\go
  • 增加了用户变量: PATH=%USERPROFILE%\go\bin
  • 修改了系统变量: PATH=%PATH%;C:\Go\bin

其中 %USERPROFILE% 代表的是当前计算机登录用户的家目录,比如我的登录名是 snowdreams1006-win7,那么 %USERPROFILE% 表示的是 C 盘下的 Users 目录下的 snowdreams1006-win7 目录,即 %USERPROFILE%=C:\Users\snowdreams1006-win7

Go 测试验证

安装前命令行中输入 go 提示无命令,安装后再次输入 go 则能正确显示命令信息.

安装后必须新打开命令行窗口才能生效,go version 可以打印出 Go 的版本信息.

$ go version
go version go1.12.7 windows/amd64

上述命令行操作验证了 Go 语言本身已安装正确,其中 go env 展示了 Go 相关的环境变量,目前重要的变量有两个:

  • GOROOT : Go 的安装目录,默认 GOROOT=c:\go
  • GOPATH : Go 的工作空间,默认 GOPATH=C:\Users\snowdreams1006-win7\go,其中 C:\Users\snowdreams1006-win7 表示用户家目录.

上述两个变量都是安装后自动设置的,除非自定义安装位置才需要手动调整一系列的环境变量,作为初次接触 Go 语言,不建议瞎折腾,为时过早,目前只要记住这些目录的位置在哪就可以了.

任意目录下打开命令行窗口都能调用 Go 相关命令,比如 go versiongo env ,这是因为安装 Go 时已自动追加了系统环境变量 PATH=%PATH%;C:\Go\bin,如果上述验证失败,记得修改环境变量 PATH 试试看!

Mac 安装配置

点此下载并双击安装 go1.12.7.darwin-amd64.pkg ,同样傻瓜式下一步安装操作.

snowdreams1006-mac11deMac:~ snowdreams1006$ go version
go version go1.12.7 darwin/amd64

安装完毕后打开终端验证 Go 的基本命令是否正常,运行 go versiongo env 查看基本配置信息.

运行命令的过程中可能会询问是否安装命令行开发者工具,按照提示默认安装即可.

Go 安装小结

Go 语言安装来说比较简单,建议采用默认配置进行安装,这样不用操心各种环境变量的配置,否则一上来就暴露在 GOROOT,GOPATHPATH 等诸多陌生概念之中,影响初学者搭建环境的信心,而且这些概念在刚开始并不会用到,未免有些操之过急.

所以,采用默认安装配置后,只要记住 Go 默认位置以及接下来在哪写 Go 程序的位置足矣!

  • 测试是否安装成功,只需要在命令行窗口中运行 go version 能够输出 Go 的版本信息表示安装成功,否则可能安装失败.
  • 查询 Go 的安装位置以及工作空间位置只需运行 go env 就能找到相应的 GOROOTGOPATH 信息.

如果是 Windows 系统:

  • Go 的默认安装位置(GOROOT): C:\go
  • Go 的默认工作空间(GOPATH): C:\Users\yourusername\go

如果是 Mac 系统:

  • Go 的默认安装位置(GOROOT): /usr/local/go
  • Go 的默认工作空间(GOPATH): /Users/yourusername/go

搭建基本的语言环境是第一步,命令行操作虽然简单,不需要额外依赖,但实际工作中总不能一直在命令行中编写代码吧,还需要一个称心如意的 IDE 来辅助我们开发,下一节见!

go 学习笔记之环境搭建的更多相关文章

  1. Android Studio 学习笔记(一)环境搭建、文件目录等相关说明

    Android Studio 学习笔记(一)环境搭建.文件目录等相关说明 引入 对APP开发而言,Android和iOS是两大主流开发平台,其中区别在于 Android用java语言,用Android ...

  2. 我的Java学习笔记 -开发环境搭建

    开始学习Java~ 一.Java简介 Java编程语言是一种简单.面向对象.分布式.解释型.健壮安全.与系统无关.可移植.高性能.多线程和动态的语言. Java分为三个体系: JavaSE(J2SE) ...

  3. Django学习笔记 开发环境搭建

    为什么使用django?1.支持快速开发:用python开发:数据库ORM系统,并不需要我们手动地构造SQL语句,而是用python的对象访问数据库,能够提升开发效率.2.大量内置应用:后台管理系统a ...

  4. cocos2d-x lua 学习笔记(1) -- 环境搭建

    Cocos2d-x 3.0以上版本的环境搭建和之前的Cocos2d-x 2.0 版差异较大的,同时从Cocos2d-x 3.0项目打包成apk安卓应用文件,搭建安卓环境的步骤有点繁琐,但搭建一次之后, ...

  5. SpringData JPA的学习笔记之环境搭建

    一.环境搭建 1.加入jar包   spring jar+jpa jar +springData jar >>SpringData jar包     2.配置applicationCont ...

  6. Mybatis学习笔记之---环境搭建与入门

    Mybatis环境搭建与入门 (一)环境搭建 (1)第一步:创建maven工程并导入jar包 <dependencies> <dependency> <groupId&g ...

  7. 前端框架vue学习笔记:环境搭建

    兼容性 不兼容IE8以下 Vue Devtools 能够更好的对界面进行审查和调试 环境搭建 1.nodejs(新版本的集成了npm)[npm是node包管理 node package manager ...

  8. Web安全测试学习笔记 - vulhub环境搭建

    Vulhub和DVWA一样,也是开源漏洞靶场,地址:https://github.com/vulhub/vulhub 环境搭建过程如下: 1. 下载和安装Ubuntu 16.04镜像,镜像地址:htt ...

  9. 【Django学习笔记】-环境搭建

    对于初学django新手,根据以下步骤可以快速进行Django环境搭建 虚拟环境创建 使用virtualenv创建并启用虚拟机环境 ,关于virtualenv可参考https://www.yuque. ...

随机推荐

  1. requests乱码问题

    有三种方法解决请求后乱码问题. 一:获取二进制数据,再利用str进行编码转换 url='http://music.baidu.com' r = requests.get(url) html=r.con ...

  2. AcWing 30. 正则表达式匹配 (剑指OFFER leetcode 10)

    题目描述请实现一个函数用来匹配包括’.’和’*’的正则表达式. 模式中的字符’.’表示任意一个字符,而’*’表示它前面的字符可以出现任意次(含0次). 在本题中,匹配是指字符串的所有字符匹配整个模式. ...

  3. Centos7升级gcc极简教程

    centos7默认gcc版本为4.8,一般不满足编译需求,因此升级gcc版本为常见操作: 现有博客中,大多数教程都是基于源码重新编译安装:但是源码编译过程等待时间很长且编译麻烦. 因此,直接基于命令升 ...

  4. js a 标签 通过download 实现下载功能

    download 属性规定被下载的超链接目标. 在 <a> 标签中必须设置 href 属性. 该属性也可以设置一个值来规定下载文件的名称.所允许的值没有限制,浏览器将自动检测正确的文件扩展 ...

  5. 使用canal增量同步mysql数据库信息到ElasticSearch

    本文介绍如何使用canal增量同步mysql数据库信息到ElasticSearch.(注意:是增量!!!) 1.简介 1.1 canal介绍 Canal是一个基于MySQL二进制日志的高性能数据同步系 ...

  6. Python爬取6271家死亡公司数据,一眼看尽十年创业公司消亡史!

    ​ 小五利用python将其中的死亡公司数据爬取下来,借此来观察最近十年创业公司消亡史. 获取数据 F12,Network查看异步请求XHR,翻页. ​ 成功找到返回json格式数据的url, 很多人 ...

  7. 新安装ubuntu系统的简单优化

    新安装的ubuntu系统,需要做下简单的优化,使其符合常用习惯,优化过程的命令与centos大都不一致,撰文备份,以备所需: 1.获取ubuntu系统root权限 在终端输入sudo passwd r ...

  8. HTML5新特性——自定义滑动条(input[type="range"])

    HTML 4.01 与 HTML5之间的差异 以下 input 的 type属性值是 HTML5 中新增的: color.date.datetime.datetime-local.month.week ...

  9. Java设计模式:Abstract Factory(抽象工厂)模式

    概念定义 抽象工厂(Abstract Factory)模式提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类. 抽象工厂模式中,系统的产品有多于一个的产品族(一个产品族里定义多个产品) ...

  10. Docker - 快速入门(一)

    概念 下面这三个概念一开始可能不好理解,等大家跟着博客把例子做完了,再回头来看应该就能理解了. docker image  # docker镜像 镜像就是一个只读的模板.镜像可以用来创建Docker容 ...