【保姆级教程】手把手教你进行Go语言环境安装及相关VSCode配置
【Go语言入门系列】前面的文章:
本篇文章介绍Go的环境安装和VSCode的配置使用。
所需环境:
Windows 10
Go语言安装包
VSCode安装包
1. Go语言环境安装
- 进入Golang官网,进入下载页面。
如果打不开可访问Golang中国:https://golang.google.cn
Golang中文版:https://go-zh.org
百度网盘:链接:https://pan.baidu.com/s/1akdfT_imi34EHdyw4Dw3Eg 提取码:wfw5

- 根据实际需求选择版本进行下载。

- 双击运行Go语言的
msi安装包。 - 按照安装引导进行下一步:

- 接受许可协议,下一步:

- 设置Go的安装路径(这里我选择默认设置),下一步:

- 点击install,等待安装成功:

- 安装成功。

- 检查是否安装成功:打开命令行窗口,输入
go version,如果可以查看安装的Go的版本,则安装成功。

2. Go环境变量
2.1. 默认的环境变量
通过 右键我的电脑 >> 属性 >> 高级系统设置 >> 环境变量,可以查看你的环境变量:

你安装Go时,会自动配置上面三处的环境变量(双击即可查看):
- 自动新建了用户变量的
GOPATH:

- 自动在用户变量的
Path中添加了值:

- 自动在系统变量的
Path中添加了值:

注:用户变量是当前登录的用户的变量;系统变量就是整个系统的变量。
下面介绍一下为什么要配置这些变量。
2.2. Go的环境变量解释
1. GOPATH
GOPATH环境变量指定了你的工作空间,工作空间用来存放你写的项目代码。
默认的配置是:
%USERPROFILE%\go
该目录就是你的用户目录下的go目录,比如:
C:/Users/zhangsan/go
2. 系统变量Path中的值
默认的配置是:
C:\Go\bin
该目录是你的Go的安装目录的bin目录。
正是由于配置了该环境变量,所以你才能够在命令行窗口中,在任意目录下调用go version命令。如果你把该环境变量删除,则会发现不能任意目录下调用go version命令,只能在你的Go的安装目录的bin目录调用该命令。

3. 用户变量Path中的值
默认的配置是:
%USERPROFILE%\go\bin
该目录是你的工作空间(即GOPATH)下的bin目录。
至于作用,则和上一个系统变量有同样的作用。
2.3. 我的Go环境变量
你可以按照默认配置来。下面是我的配置,为想自定义的同学提供一个思路。
1. 自定义GOPATH
我将用户变量的GOPATH删除了:

然后在系统变量中重新新建该变量(当然你可以继续在用户变量中修改),至于目录位置,则随心所欲:

2. 添加GOPATH的bin
由于我更改了默认的GOPATH变量,所以原先用户变量中的Path变量中的那个就可以删除(修改)了。
我将其删除:

然后在系统变量的Path变量中重新添加:

3. 添加GOROOT变量

该环境变量指定了我的Go的安装目录。
3. 安装使用VSCode
- 下载VScode并安装VSCode。
- 安装中文插件:

- 下载并安装Go插件:

建议花点时间阅读Go for Visual Studio Code。
- 进入你之前设置的
GOPATH工作空间,我的是D:\Work\Program\go,然后新建三个目录,分别是:pkg、bin、src。

- 然后使用VSCode打开
src目录:

- 在该目录下新建文件夹
hello,然后在hello目录下新建Go文件helloworld.go,并编辑:
package main
import "fmt"
func main() {
fmt.Println("Hello, World!!!")
}
- 保存,使用快捷键【Ctrl+`】打开终端,进行如下操作:

成功打印字符串!
4. 安装Go的相关插件
你在写helloworld.go的时候,VSCode会提示你安装插件(如果没有,点击Analysis Tools Missing),这些插件能更方便你写代码:

点击Install All,VSCode会为你安装17个tools,可能会因为网络原因而安装失败:

使用go env命令可以看到Go的环境配置,其中GOPROXY默认是:
GOPROXY=https://proxy.golang.org,direct
这个访问不到,所以需要设置一个可以访问的,执行下面的命令:
go env -w GOPROXY=https://goproxy.cn,direct
然后再次Install All,就能安装成功了:

你可以去GOPATH/bin目录下,可以看到安装了许多可执行文件:

或者你可以直接把我下载好的文件,拷贝到GOPATH/bin目录下,是一样的效果。
链接:https://pan.baidu.com/s/1LqmlrYAdPMNm9p-n0hJ2Hg
提取码:29l3
至此,Go语言的环境安装及相关VSCode配置就完成了。
作者简介
【作者】:行小观
【公众号】:行人观学
【简介】:一个面向学习的账号,用有趣的语言写系列文章。包括Java、Go、数据结构和算法、计算机基础等相关文章。
本文章属于系列文章「Go语言入门系列」,本系列从Go语言基础开始介绍,适合从零开始的初学者。
欢迎关注,我们一起踏上编程的行程。
如有错误,还请指正。
【保姆级教程】手把手教你进行Go语言环境安装及相关VSCode配置的更多相关文章
- 保姆级教程——Ubuntu16.04 Server下深度学习环境搭建:安装CUDA8.0,cuDNN6.0,Bazel0.5.4,源码编译安装TensorFlow1.4.0(GPU版)
写在前面 本文叙述了在Ubuntu16.04 Server下安装CUDA8.0,cuDNN6.0以及源码编译安装TensorFlow1.4.0(GPU版)的亲身经历,包括遇到的问题及解决办法,也有一些 ...
- 手把手教你进行R语言的安装及安装过程中相关问题解决方案
这篇文章旨在为R语言的新手铺砖引路,行文相对基础,希望对在R语言安装上有问题的小伙伴提供帮助和指引.一.什么是 R 语言R 编程语言被广泛应用在统计科学和商业领域. 在各种编程语言排名中 R 语言的排 ...
- 自建本地服务器,自建Web服务器——保姆级教程!
搭建本地服务器,Web服务器--保姆级教程! 本文首发于https://blog.chens.life/How-to-build-your-own-server.html. 先上图!大致思路就是如此. ...
- Eclipse for C/C++ 开发环境部署保姆级教程
Eclipse for C/C++ 开发环境部署保姆级教程 工欲善其事,必先利其器. 对开发人员来说,顺手的开发工具必定事半功倍.自学编程的小白不知道该选择那个开发工具,Eclipse作为一个功能强大 ...
- 强大博客搭建全过程(1)-hexo博客搭建保姆级教程
1. 前言 本人本来使用国内的开源项目solo搭建了博客,但感觉1核CPU2G内存的服务器,还是稍微有点重,包括服务器内还搭建了数据库.如果自己开发然后搭建,耗费时间又比较多,于是乎开始寻找轻量型的博 ...
- RocketMQ保姆级教程
大家好,我是三友~~ 上周花了一点时间从头到尾.从无到有地搭建了一套RocketMQ的环境,觉得还挺easy的,所以就写篇文章分享给大家. 整篇文章可以大致分为三个部分,第一部分属于一些核心概念和工作 ...
- 手把手教你在Ubuntu上分别安装Nginx、PHP和Mysql
手把手教你在Ubuntu上分别安装Nginx.PHP和Mysql
- [ionic开源项目教程] - 手把手教你使用移动跨平台开发框架Ionic开发一个新闻阅读APP
前言 这是一个系列文章,从环境搭建开始讲解,包括网络数据请求,将持续更新到项目完结.实战开发中遇到的各种问题的解决方案,也都将毫无保留的分享给大家. 关注订阅号:TongeBlog ,查看移动端跨平台 ...
- 小草手把手教你LabVIEW串口仪器控制—安装使用仪器现有驱动
声明:很多仪器是没有驱动的.所以,具体问题具体分析.另外声明:所谓的驱动,也就是封装好的底层的串口通信程序,也是程序而已,只不过别人帮你做成了子 VI,让自己容易用.所以:不要弄混淆了概念.国外的很多 ...
随机推荐
- ssm框架(Spring Springmvc Mybatis框架)整合及案例增删改查
三大框架介绍 ssm框架是由Spring springmvc和Mybatis共同组成的框架.Spring和Springmvc都是spring公司开发的,因此他们之间不需要整合.也可以说是无缝整合.my ...
- 用笛卡尔积来创建一千六百万大表 整体19分钟 大表建成两分钟 设置id13分钟
昨天拙文中讲述了用自增方式创建一千六百万大表的方案,这回讨论的是用笛卡儿积,实践证明这种方案更快. 2020年3月15日08点58分实验开始 创建仅有四千数据的tb_4thousand1表: SQL& ...
- 使用java.io.RandomAccessFile更改文本文件的内容
原文本内容: 2020-01-21 08:31:08.520 [main] INFO logbackCfg.App -秦时明月汉时关 2020-01-21 08:31:08.521 [main] ER ...
- 8成以上的java线程状态图都画错了,看看这个-图解java并发第二篇
本文作为图解java并发编程的第二篇,前一篇访问地址如下所示: 图解进程线程.互斥锁与信号量-看完还不懂你来打我 图形说明 在开始想写这篇文章之前,我去网上搜索了很多关于线程状态转换的图,我惊讶的发现 ...
- Java实现获取命令行中的指定数据
构造一个ping的命令类这个类中可以设置需要ping的目标域名类提供方法public void exec();方法执行完毕后可以读取ping的次数,ping的成功回应包个数ping的丢包个数,ping ...
- JDK1.7之前的Bug之静态代码块
程序的主入口是main方法,但是在jdk1.7之前,可以没有main方法也一样能运行,很是不可思议,到底是什么原因呢?,大家都知道在类中定义了静态代码块的话,是首先执行代码块里的语句的,如果把静态代码 ...
- 【吴恩达课程使用】keras cpu版安装【接】- anaconda (python 3.7) win10安装 tensorflow 1.8 cpu版
一.确认tensorflow的版本: 接上一条tensorflow的安装,注意版本不匹配会出现很多问题!:[吴恩达课程使用]anaconda (python 3.7) win10安装 tensorfl ...
- [剑指Offer]57-和为s的数字
题目一 输入一个递增的数组和一个数字,在数组中查找2个数字,是他们的和正好为S,如果有多对的和为S,则输出任意一对即可. 题解 关键信息是数组有序.初始化i,j指向第一个和第二个数,与S比较,若小了, ...
- 使用阿里云OSS的服务端签名后直传功能
网站一般都会有上传功能,而对象存储服务oss是一个很好的选择.可以快速的搭建起自己的上传文件功能. 该文章以使用阿里云的OSS功能为例,记录如何在客户端使用阿里云的对象存储服务. 服务端签名后直传 背 ...
- 学习 | css3实现进度条加载
进度条加载是页面加载时的一种交互效果,这样做的目的是提高用户体验. 进度条的的实现分为3大部分:1.页面布局,2.进度条动效,3.何时进度条增加. 文件目录 加载文件顺序 <link rel=& ...