一、官网
https://go.dev/dl/
Windows 平台和 Mac 平台推荐下载可执行文件版,Linux 平台下载压缩文件版。
二、下载&安装
安装。
查看GO版本
可以打开终端窗口,输入go version
命令,查看安装的 Go 版本:
C:\Users\gravityZero>go version
go version go1.20.5 windows/amd64
三、配置GO_HOME
GO_HOME是一个环境变量,用来表明你写的 go 项目的存放路径(工作目录)。
GO_HOME路径最好只设置一个,所有的项目代码都放到GO_HOME的src目录下。
创建文件
在GOPATH目录下新建三个文件夹
bin 用来存放编译后生成的可执行文件
pkg 用来存放编译后生成的归档文件
src 用来存放源码文件
GOPATH 在不同操作系统平台上的默认值:
平台 GOPATH 默认值 举例
Windows %USERPROFILE%/go C:\Users \ 用户名 \ go
Unix $HOME/go /home / 用户名 / go
同时,我们将 GOROOT下的 bin 目录及GOPATH下的 bin 目录都添加到环境变量中。
GOPATH
D:\ProgramProjects\Go
在进行 Go 语言开发的时候,我们的代码总是会保存在`$GOPATH/src`目录下。在工程经过`go build`、`go install`或`go get`等指令后,会将下载的第三方包源代码文件放在`$GOPATH/src`目录下, 产生的二进制可执行文件放在 `$GOPATH/bin`目录下,生成的中间缓存文件会被保存在 `$GOPATH/pkg` 下
如果我们使用版本管理工具(Version Control System,VCS。常用如 Git)来管理我们的项目代码时,我们只需要添加`$GOPATH/src`目录的源代码即可。`bin` 和 `pkg` 目录的内容无需版本控制。
=================================================
GOROOT
D:\Environment\Go
GOROOT就是go的安装路径
四、Go项目结构
在进行 Go 语言开发的时候,我们的代码总是会保存在$GOPATH/src目录下。在工程经过go build、go install或
go get等指令后,会将下载的第三方包源代码文件放在$GOPATH/src目录下, 产生的二进制可执行文件放在 $GOPATH/
bin目录下,生成的中间缓存文件会被保存在 $GOPATH/pkg 下。
如果我们使用版本管理工具(Version Control System,VCS。常用如 Git)来管理我们的项目代码时,我们只
需要添加$GOPATH/src目录的源代码即可。bin 和 pkg 目录的内容无需版本控制。
C:\Users\gravityZero>go help
Go is a tool for managing Go source code.
Usage:
go <command> [arguments]
The commands are:
bug start a bug report
build compile packages and dependencies
clean remove object files and cached files
doc show documentation for package or symbol
env print Go environment information
fix update packages to use new APIs
fmt gofmt (reformat) package sources
generate generate Go files by processing source
get add dependencies to current module and install them
install compile and install packages and dependencies
list list packages or modules
mod module maintenance
work workspace maintenance
run compile and run Go program
test test packages
tool run specified go tool
version print Go version
vet report likely mistakes in packages
Use "go help <command>" for more information about a command.
Additional help topics:
buildconstraint build constraints
buildmode build modes
c calling between Go and C
cache build and test caching
environment environment variables
filetype file types
go.mod the go.mod file
gopath GOPATH environment variable
gopath-get legacy GOPATH go get
goproxy module proxy protocol
importpath import path syntax
modules modules, module versions, and more
module-get module-aware go get
module-auth module authentication using go.sum
packages package lists and patterns
private configuration for downloading non-public code
testflag testing flags
testfunc testing functions
vcs controlling version control with GOVCS
Use "go help <topic>" for more information about that topic.
评论