Windows Go 开发环境下载、安装并配置
前言
对于我们Windows用户而言,Go提供两种环境安装方式(源码安装除外):
1、MSI安装(MSI文件是Windows Installer的数据包,它实际上是一个数据库,包含安装一种产品所需要的信息和在很多安装情形下安装(和卸载)程序所需的指令和数据。):程序在安装过程中会自动配置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开发包在安装完成后会为设置一个默认目录,并且在
Go1.14
及之后的版本中启用了Go Module模式之后,不一定非要将代码写到GOPATH目录下,所以也就不需要我们再自己配置GOPATH了,使用默认的即可。
Go环境下载
Go官网下载地址(需要FQ):
Go官方镜像站(国内用户推荐):
Go语言中文网下载(国内用户推荐):
选择我们对应系统的安装包下载即可:
Go1.16.5安装图解
Go安装目录清单
打开刚才设置的安装地址:D:\Go
(GOROOT)
Go安装目录(GOROOT
)的文件夹结构简单介绍如下所示:
/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
查看系统中配置的Go环境变量
命令:go env
GOPROXY(重要Go默认下载依赖库代理修改)
关于GOPROXY
由于国内的网络环境问题,我们可以通过配置GOPROXY避免DNS污染导致的模块拉取缓慢或失败的问题,加速你的构建。
查看本机环境默认GoPROXY配置,并修改为国内可访问
注意:在Go1.14版本之后,都推荐使用go mod
模式来管理依赖环境了,也不再强制我们把代码必须写在GOPATH
下面的src目录了,你可以在你电脑的任意位置编写Go代码。(网上有些教程适用于1.11版本之前。)
由Go环境变量图可知,本机的默认GoPROXY配置是:
GOPROXY=https://proxy.golang.org,direct
,由于国内访问不到https://proxy.golang.org
,所以我们需要换一个PROXY,这里推荐使用https://goproxy.io
或https://goproxy.cn
。
执行下面的命令修改GOPROXY:
go env -w GOPROXY=https://goproxy.cn,direct
go run命令编译并运行:
首先创建helloWorld.go
文件:
填写以下代码:
package main //定义一个包,声明包名为main,表明当前是一个可执行程序(Go通过包来管理明明空间) import "fmt" //导入一个外部包fmt func main() { // main函数,是程序执行的入口函数
fmt.Println("Go Hello World!") //在终端打印出Go Hello World!
}
进入该文件所在位置打开命令行:
使用go run命令行运行文件helloWorld.go
:
Windows Go 开发环境下载、安装并配置的更多相关文章
- 【C#】VS2015开发环境的安装和配置(二)2016-08-03更新
分类:C#.VS2015.WPF.ASP.NET MVC.Android.iOS.Unity3D: 更新日期:2016-08-03 按下面介绍的步骤安装即可. 一.安装JDK和Android SDK ...
- 【C#】VS2015开发环境的安装和配置(一)2016-08-03更新
分类:C#.VS2015.WPF.ASP.NET MVC.Android.iOS.Unity3D: 更新日期:2016-08-03 一.简介 为了避免网上乱七八糟的过时介绍,避免误导初学者,这次把至2 ...
- go 语言开发环境的安装与配置
go 语言开发环境的安装与配置 编辑器选择 一直以来都是用sublime,但是听说sublime对于golang的插件支持并不是特别完善,并且VS Code只要在自身所带的扩展商店里安装go插件就可以 ...
- 教你10分钟内在Windows上完成Rails开发环境的安装和配置
原文:http://www.cnblogs.com/tambor/archive/2011/12/25/rails_anzhuang_railsinstaller.html 一般来说,Windows开 ...
- Win7 32位系统下Java开发环境的安装及配置
目录: Java JDK安装. Java JDK系统环境的配置. 配置常见问题的解决. Java JDK的安装 Java Jdk(Java Development Kit)Java开发不可缺少的环境, ...
- VS2015开发环境的安装和配置 2016-07-03更新
创建日期:2016-07-03 一.简介 为了避免网上乱七八糟的过时介绍,避免误导初学者,这次把至2016年6月底C#开发环境各种版本的更新和安装过程重新整理一下贡献出来.目的是为了让对C#感兴趣的初 ...
- Windows下Linux 环境 Cygwin安装及配置 基本工具使用
用久了Ubuntu开发环境,切换到windows多少有些不爽,想在windows下享用linux便捷的工具可以安装强大的Cygwin,本人也是初次使用中学习.本文主要目的让你可以通过cygwin使用基 ...
- 从零开始安装搭建win10与ubuntu20.04双系统开发环境——集安装、配置、软件、美化、常见问题等于一体的——超详细教程
目录 **前言 ** 关于系统安装配置与软件安装 一.Win10安装ubuntu20.04双系统 1.按照自己的需求分区 2.配置软件镜像源 软件包管理工具介绍 更换APT源--使用国内镜像 3.解决 ...
- [flutter+dart] windows7下开发环境的安装与配置
前言 博主是做嵌入式的,参加工作时间也不久,而且是非科班出身,之前从未接触过移动开发.最近了解到了flutter框架和dart语言,想作为第二语言学习一下,因此会从最基础的环节开始,以此博客作为记录, ...
随机推荐
- CG-CTF Our 16bit Games
一.放到xp上面跑,发现是一个图形界面的飞机游戏...估计是分数到达多少,然后就可以输出flag. 打开ida,一脸懵逼,主要这玩意16位,我直接静态调试了 发现很多汇编代码,有点懵逼,在最下方的地方 ...
- MySQL | MySQL5.7.* 安装
清理系统环境 清理系统环境,保证安装时没有打扰. # 查看系统是否自带 mariadb-lib rpm -qa | grep mariadb # 如果有,输出:mariadb-libs-5.5.44- ...
- Cobbler自动部署装机 轻松解决装机烦恼
Cobbler自动部署装机一.实验准备二.搭建步骤1.导入epel源2.安装Cobbler以及其相关服务软件包3.修改Cobbler 主配置文件4.启动相关服务并关闭防火墙和selinux5.使用co ...
- Selenium 自动化测试中对页面元素的value比较验证 java语言
源代码: public boolean verifyText(String elementName, String expectedText) {String actualText = getValu ...
- 一行代码打印python之禅
就这一句: import this 输出: The Zen of Python, by Tim Peters Beautiful is better than ugly. Explicit is be ...
- Java 获取Word批注所标记的文本和图片
[环境配置] 本文将通过Java程序代码来展示如何来获取Word批注所标注的文本和图片.这里使用的Word Jar包工具是Free Spire.Doc for Java,在pom.xml中按如下步骤配 ...
- 一文读懂k8s rbac 权限验证
自我认为的k8s三大难点:权限验证,覆盖网络,各种证书. 今天就说一下我所理解的权限验证rbac. 咱不说rbac0,rbac1,rbac2,rbac3.咱就说怎么控制权限就行. 一.前言 1,反正R ...
- Cesium加载地形数据只显示半个地球
Cesium第0级地形包括两个瓦片:0/0/0.terrain,0/1/0.terrain,分别为左半球和右半球(具体参考:https://blog.csdn.net/u013929284/artic ...
- C++模板封装Win32 API 动态调用
起因 花两周通读了一遍<C++ Primer>,积攒的疑惑一扫而光. 前因 利用C++11可变模板,封装调用dll导出函数 本以为已经很好用了,最近抽时间巩固下知识体系,发现自己道行不够! ...
- webSocket实现多人聊天功能
webSocket实现多人在线聊天 主要思路如下: 1.使用vue构建简单的聊天室界面 2.基于nodeJs 的webSocket开启一个socket后台服务,前端使用H5的webSocket来创建一 ...