codecamp

Go 语言环境安装

Go 语言支持以下系统:
  • Linux
  • FreeBSD
  • Mac OS X(也称为 Darwin)
  • Window

安装包下载地址为:https://golang.google.cn/dl/

各个系统对应的包名:

操作系统 包名
Windows go1.15.2.windows-amd64.msi
Linux go1.15.2.linux-amd64.tar.gz
Mac go1.15.2.darwin-amd64.pkg
Source go1.15.2.src.tar.gz

UNIX/Linux/Mac OS X, 和 FreeBSD 安装

以下介绍了在UNIX/Linux/Mac OS X, 和 FreeBSD系统下使用源码安装方法:

1、下载源码包:go1.15.2.linux-amd64.tar.gz

2、将下载的源码包解压至 /usr/local目录。

tar -C /usr/local -xzf go1.15.2.linux-amd64.tar.gz

3、将 /usr/local/go/bin 目录添加至PATH环境变量:

export PATH=$PATH:/usr/local/go/bin

4、验证是否安装成功命令:

$ go version

注意:MAC 系统下你可以使用 .pkg 结尾的安装包直接双击来完成安装,安装目录在 /usr/local/go/ 下,并将安装路径 /usr/local/go/bin 配置到变量环境中。


Windows 系统下安装

Windows 下可以使用 .msi 后缀(在下载列表中可以找到该文件,如go1.4.2.windows-amd64.msi)的安装包来安装。

默认情况下.msi文件会安装在 c:\Go 目录下。你可以将 c:\Go\bin 目录添加到 PATH 环境变量中。添加后你需要重启命令窗口才能生效。

配置GOPROXY

Go1.12版本之后,开始使用go mod模式来管理依赖环境了

由于国内访问不到默认的GOPROXY配置链接,所以我们需要换一个PROXY,这里推荐使用https://goproxy.io或https://goproxy.cn。

可以执行下面的命令修改GOPROXY:

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

GO MOD设置

要启用go module支持首先要设置环境变量GO111MODULE,通过它可以开启或关闭模块支持,它有三个可选值:off、on、auto,默认值是auto。

  1. GO111MODULE=off禁用模块支持,编译时会从GOPATH和vendor文件夹中查找包。
  2. GO111MODULE=on启用模块支持,编译时会忽略GOPATH和vendor文件夹,只根据 go.mod下载依赖。
  3. GO111MODULE=auto,当项目在$GOPATH/src外且项目根目录有go.mod文件时,开启模块支持。

通过以下命令修改

go env -w GO111MODULE=on

使用go module模式新建项目时,我们需要通过go mod init 项目名命令对项目进行初始化,该命令会在项目根目录下生成go.mod文件。例如,我们使用hello作为我们第一个Go项目的名称,执行如下命令。

go mod init hello

运行之前可以使用​go mod tidy​命令将所需依赖添加到go.mod文件中,并且能去掉项目中不需要的依赖

安装测试

创建工作目录 C:\>Go_WorkSpace。

文件名: test.go,代码如下:

package main

import "fmt"

func main() {
   fmt.Println("Hello, World!")
}

使用 go 命令执行以上代码输出结果如下:

C:\Go_WorkSpace>go run test.go

Hello, World!


Go 语言教程
Go 语言结构
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }