Go语言与分布式开发(一)——Go的安装与HelloWorld


Go的下载与安装

首先下载Go,下载链接https://golang.google.cn/dl/

下载安装之后直接傻瓜式安装即可,安装完成之后打开终端输入 go version,如果出现下面结果则安装成功。

博主使用VsCode代码编辑器,其提供了许多Go的插件,但是会出现下载不了的问题,可以参考这篇文章解决此问题。

Go 下载完之后可以使用 go env 查看 Go 开发包的环境变量配置信息:

set GO111MODULE=on
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\Dell\AppData\Local\go-build
set GOENV=C:\Users\Dell\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=C:\Users\Dell\go\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\Dell\go
set GOPRIVATE=
set GOPROXY=https://goproxy.cn,direct
set GOROOT=C:\Program Files\Go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=C:\Program Files\Go\pkg\tool\windows_amd64        
set GOVCS=
set GOVERSION=go1.19.1
set GCCGO=gccgo
set GOAMD64=v1
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=NUL
set GOWORK=
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -Wl,--no-gc-sections -fmessage-length=0 -fdebug-prefix-map=C:\Users\Dell\AppData\Local\Temp\go-build1298709145=/tmp/go-build -gno-record-gcc-switches

输出信息部分如下:

  • GOARCH 表示目标处理器架构
  • GOBIN 表示编译器和链接器的安装位置
  • GOOS 表示目标操作系统,这里为 Windows
  • GOPATH 表示当前工作目录,这里为 C:\Users\Dell\go
  • GOROOT 表示 Go 开发包的安装目录

在 Go 1.8 版本之前,GOPATH 环境变量默认是空的。从 Go 1.8 版本开始,Go 开发包在安装完成后,将 GOPATH 赋予了一个默认的目录,参见下表。

平台GOPATH默认值举例
Windows平台%USERPROFILE%/goC:\Users\用户名\go
Unix平台$HOME/go/home/用户名/go

GOPATH 目录一般为:

$HOME/go
  --bin  # 存放编译后的可执行文件
  --pkg  # 依赖包编译后的*.a文件
  --src  # 存放源码文件,以代码包为组织形式

比如下面就是一般Go项目的开发目录:

my-go                 // my-go为GOPATH目录
  -- bin
     -- myApp1        // 编译生成
     -- myApp2        // 编译生成
     -- myApp3        // 编译生成
  -- pkg                             依赖包编译后的*.a文件//
  -- src
     -- MyApp1        // 项目1
        -- models
        -- controllers
        -- others
        -- main.go 
     -- MyApp2        // 项目2
        -- models
        -- controllers
        -- others
        -- main.go

设置 GOPATH 后,工程中使用 import的根目录是GOPATH中的src目录 GOPATHC:\Users\Dell\go,工程为 C:\Users\Dell\Desktop\my-go\src\MyApp1,那么 MyApp1 中使用 import 导入本地包的时候,这样写:

import ”MyApp1\models“ // models为包名

也就是说,GOPATH下必须要有src文件,不然 import 导包的时候会找不到。

import 导包规则:

  1. 先去 $GOROOT\src/ 路径下找 C:\Program Files\Go (系统环境变量 $GOROOT,即使用 go env 命令显示的 GOROOT)

  2. 如果 $GOROOT 没有找到,就去 Project GOPATH\src\ 路径下找 C:\Users\Dell\Desktop\my-go\src\MyApp1

  3. 如果 Project GOPATH\src\ 还没找到,就去 Global GOPATH 路径下找 C:\Users\Dell\go(系统环境变量 $GOPATH,即使用 go env 命令显示的 GOPATH


HelloWorld

这里使用集成开发环境 Visual Studio Code,首先使用 go mod init Go_1 初始化,生成 go.mod,其内容如下:

module GO_1

go 1.19

该命令初始化并写入一个新的 go.mod 至当前目录中,实际上是创建一个以当前目录为根的新模块。

更多 go mod init 的内容可以看这篇文章

然后创建文件 HelloWorld.go,输入以下代码:

package main //指明这个文件属于main包

import "fmt" //导入fmt包

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

然后使用 go run . 运行:

此外我们还可以使用 go build HelloWorld.go 生成可执行文件 HelloWorld.exe


参考文献

Go语言GOPATH是什么———海布里Simple
Go语言GOPATH详解———C语言中文网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值