安装
按照自己平台去下载安装包
linux 安装步骤:
shell
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.14.3.linux-amd64.tar.gz
shell
export PATH=$PATH:/usr/local/go/bin
shell
go version
windows 安装
下载地址:https://golang.google.cn/dl/
,这里提供了不少平台的go版本,根据自己的平台选择下载。
这里注意:安装路径选择一个比较好找的路径,例如:C:\go
,其他安装都选择“下一步”即可。
安装完成后,把C:\go\bin
目录添加到环境变量,然后就可以使用go了,打开命令行终端输入如下内容获取go版本信息。
go version
Linux安装
设置GO环境变量
在linux系统下一半通过$HOME/.bashrc
配置自定义环境变量,根据不同发型版本也可能是文件$HOME/.profile
,然后使用gedit或者vi来编辑文件内容。
shell
export GOROOT=$HOME/go
为了确保相关文件在系统文件的任何地方都能够被调用
shell
export PATH=$PATH:$GOROOT/bin
在开发项目时,需要一个环境变量来保存工作目录
shell
export GOPATH=$HOME/Applications/Go
$GOPATH 可以包含多个工作目录,取决于你的个人情况。如果你设置了多个工作目录,那么当你在之后使用 go get(远程包安装命令)时远程包将会被安装在第一个目录下。
在完成这些设置后,你需要在终端输入指令 source .bashrc 以使这些环境变量生效。然后重启终端,输入 go env 和 env 来检查环境变量是否设置正确。
安装 c工具
Go的工具链是C语言编写的,因此在安装GO之前需要安装C工具,如果系统是ubuntu。可以在终端输入如下指令
shell
sudo apt-get install bison ed gawk gcc libc6-dev make
获得go源代码
shell
wget https://storage.googleapis.com/golang/go<version>.src.tar.gz
tar -zxvf go<version>.src.tar.gz
sudo mv go $GOROOT
构建go
shell
cd $GOROOT/src
./all.bash
测试安装
使用编辑器来编写如下内容,保存文件名hello_go.go
go
package main
func main(){
println("hello go")
}
执行命令go run hello_go.go
将会打印 hello go
macos 安装
要记住的变量
GOROOT 是 Go 开发包的安装目录,默认可以设置在/usr/local/go
export PATH=$PATH:$GOROOT/bin:$GOBIN
GOPATH 是一个路径,用来存放开发中需要用到的代码包
vim /etc/profile
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin:$GOBIN
export GOPATH=/home/用户名字/go
编写脚本
go
package main
import ("fmt")
func main(){
fmt.Println("Hello World")
}
启动脚本
shell
go run main.go
打包脚本
shell
go build main.go
打包脚本会生成名称是 main 的可执行文件。可是使用./main
去执行文件
- Go 是以
包
为管理单位,每个 Go 源文件必须先声明所属的包,通过 package 声明。 main
包是 Go 语言程序的入口包- 一个 Go 语言程序只能右一个
main
包 - 如果一个程序没有
main
包,那么编译时将会出错,无法生成可执行文件。 main函数
,Go 语言程序的入口函数,是程序启动后运行的第一个函数。main函数
只能声明在main
包中,不能声明在其他包中,并且一个main
包中也必须有且仅有一个main函数
。go run
命令将编译和执行指令合二为一,会在编译之后立即执行 Go 语言程序,但是不会生成可执行文件。一般在测试时候使用。- go build 命令用来编译程序,它可以将程序代码和相关以来编译成一个可执行文件,上线时只上线可执行文件就可以了。
go文件夹解析
- api: 这个文件夹通常用于存放 API 相关的代码文件,例如 HTTP API 或者 gRPC API 的定义文件。
- bin: 这个文件夹一般用于存放编译生成的可执行文件,例如你的 Go 程序的可执行文件(例如
go.exe
、gofmt.exe
等)。 - doc: 这个文件夹通常用于存放文档文件,可能包括项目的说明文档、设计文档、使用手册等。
- lib: 这个文件夹一般用于存放项目的库文件,可以是你自己写的一些库代码,也可以是第三方的依赖库。
- misc: 这个文件夹通常用于存放一些杂项的文件,可能是一些脚本文件、配置文件等。
- pkg: 这个文件夹通常用于存放编译生成的包文件,即其他 Go 程序可以导入和使用的包。
- src: 这个文件夹通常用于存放项目的源代码文件,是主要的代码目录。
- test: 这个文件夹通常用于存放项目的测试代码,包括单元测试、集成测试等。
- AUTHORS: 这个文件可能是用于记录项目的作者信息,包括项目的贡献者等。