Windows Go 开发环境下载、安装并配置

5,775 阅读4分钟

对于我们Windows用户而言,Go提供两种环境安装方式(源码安装除外):

1、MSI安装([MSI文件是Windows Installer的数据包](msi文件格式_百度百科 (baidu.com)),包含安装一种产品所需要的信息和在很多安装情形下安装(和卸载)程序所需的指令和数据。):程序在安装过程中会自动配置Go所需要的环境变量。
2、ZIP安装:需要你手动设置一些环境变量。

Go重要环境变量介绍

Go开发环境依赖于一些操作系统环境变量,你最好在安装Go之前就设置好这些系统环境变量配置。如果你使用的是Windows的话,你完全不用进行手动设置,Go将被默认安装在目录c:/go(当然你也可以修改GOROOT的安装位置如:D:/Go)下。这里列举几个最为重要的环境变量:

  • GOROOT 是Go在你的电脑上的安装位置(**安装根目录),它的值一般都是 c:/go,当然,你也可以安装在别的地方。
  • GOPROXY 是控制Go Module下载的来源,有助于确保构建的确定性和安全性(代理的配置可以在goproxy.io这个网站上找到说明)。
  • GOARCH 表示目标机器的处理器架构,它的值可以是 386、amd64 或 arm。
  • GOOS 表示目标机器的操作系统,它的值可以是 darwin、freebsd、linux 或 windows。
  • GOBIN 表示编译器和链接器的安装位置,默认是根目录下的 GOROOT/bin,如果你使用的是Go 1.0.3及以后的版本,一般情况下你可以将它的值设置为空,Go 将会使用前面提到的默认值。
  • GOPATH Go开发包在安装完成后会为设置一个默认目录(工作空间,可以指定多个目录,它主要包含三个子目录,一个是bin,一个是src,一个是pkg,其中src存放的是我们的源代码和远程下载的代码,pkg存放的编译的中间文件,bin存放的是最后的可执行文件),并且在Go1.14及之后的版本中启用了Go Module模式之后,不一定非要将代码写到GOPATH目录下,所以也就不需要我们再自己配置GOPATH了,使用默认的即可。

Go环境下载

Go官方镜像站(国内用户推荐):

golang.google.cn/dl/ Go语言中文网下载(国内用户推荐): studygolang.com/dl 当然也可以去官网去下载;\

选择我们对应系统的安装包下载即可:

image.png

Go安装图解

1.找到下载文件点击安装

image.png

image.png

image.png

image.png

image.png

image.png

image.png

Go安装目录清单

image.png Go安装目录文件夹结构简单说明如下所示:

  • /api:每个版本api变更差异
  • /bin:go源码包编译出的编译器(go)、文档工具(godoc)、格式化工具(gofmt)等
  • /doc:英文版的Go文档
  • /lib:包含项目所引用、依赖的一些库文件
  • /misc:包含与支持 Go 编辑器有关的配置文件以及 cgo 的示例,杂项用途的文件,例如 Android 平台的编译、git 的提交钩子等
  • /pkg:包含Windows 平台编译好的中间文件
  • /src:包含源代码构建脚本和标准库的包的完整源代码
  • /test:测试用例存放处

验证是否安装配置成功

win+r: cmd:

go version 或 go help

image.png

image.png

查看系统中配置的Go环境变量

go env

image.png GOPROXY(重要Go默认下载依赖库代理修改)

关于GOPROXY

由于国内的网络环境问题,我们可以通过配置GOPROXY避免DNS污染导致的模块拉取缓慢或失败的问题,加速你的构建。

查看本机环境默认GoPROXY配置,并修改为国内可访问

image.png

注意:在Go1.14版本之后,都推荐使用go mod模式来管理依赖环境了,也不再强制我们把代码必须写在GOPATH下面的src目录了,你可以在你电脑的任意位置编写Go代码。(网上有些教程适用于1.11版本之前。)

由Go环境变量图可知,本机的默认GoPROXY配置是:GOPROXY=https://proxy.golang.org,direct,由于国内访问不到https://proxy.golang.org,所以我们需要换一个PROXY,这里推荐使用https://goproxy.iohttps://goproxy.cn执行下面的命令修改GOPROXY:

go env -w GOPROXY=https://goproxy.cn,direct

查看是否修改成功
image.png

go run命令编译并运行:

首先创建helloWorld.go文件:

package main //定义一个包,声明包名为main,表明当前是一个可执行程序(Go通过包来管理明明空间)

import "fmt" //导入一个外部包fmt

func main() { // main函数,是程序执行的入口函数
	fmt.Println("Go Hello World!") //在终端打印出Go Hello World!
}