- 学习安装以及配置常见的 Go 环境变量用于开发环境
- 学习 Go 的一些基本命令以及工具(Makefile)
如何安装与组织你的目录
go 编译器的安装方法直接上官方网站按自己的操作系统来
you are free to organize your projects as you see fit.
环境变量
你安装的 third-party 工具所在的地方
$HOME/go
$HOME/go/src
源码目录
$HOME/go/bin
build 后的二进制可执行文件目录
注意,你可以自由的设置 $GOPATH
环境变量来影响上面的 $HOME
建议明确指定你的 GOPATH
环境变量,并且把 $GOPATH/bin
目录置于操作系统的可执行路径 path 下
Linux like
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
Windows
setx GOPATH %USERPROFILE%\go
setx path "%path%;%USERPROFILE%\bin"
注意:现在已经不使用 GOROOT 环境变量指定 Go 开发环境位置了
编译命令
go run <file_name>
编译后执行并删除掉临时二进制文件
go build <file_name>
编译文件,可以使用 -o <file_name>
参数指定输出文件名
获取第三方的Go工具
不像 Java 的 Maven,js 的 NPM,Go 没有一个中心化的主机服务用于提供这些包
我们使用第三方源代码仓库 go install <repo_address@repo_version>
,下载编译,并且安装到 $GOPATH/bin
目录下,如果你之前将这个目录添加进可执行目录,这时你就可以使用该程序了。
但是要注意,不是所有的仓库都支持你当前使用的 Go 版本编译,如果你下载的应用提供了对应系统的 release,直接下载是最好的。
另外,使用此命令需要你安装 Git
如果需要更新到新版本,@
符号后指定一个新版本号或者 @latest
$HOME/bin
目录下的是二进制文件,你可以放到你计算机下的任何其他目录
强制的代码格式
go fmt
分号插入规则
Go 需要分号,但是 Go 开发者从来不手动放置分号,这个工作由编译器来处理,会有一个自动分号插入规则,规则作用于语句末尾的最后一个 token,会触发补全分号的 token 类型如下
- 一个标识符( int, float64)
- 基本字面量,数字或者字符串常量
break
,continue
,return
,++
,--
,)
,}
,fallthrough
Always run
go fmt
orgoimports
before compiling your code!
仅仅有 go fmt
还远远不够,所有的 Go 开发者应该阅读
golint
$ go install golang.org/x/lint/golint@latest
术语 lint 来源于贝尔实验室,第一个 linter 写于 1978 年
``
golangci-lint
https://golangci-lint.run/usage/install/
Makefile
Go 使用makefile作为构建工具
Windows
如果使用的是 windows,先安装一下 Chocolatey
以管理员权限启动命令行,然后运行下列命令
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
PS D:\ch1> choco -v
2.2.2
PS D:\ch1> choco install make
Go 多版本使用方法
书上的 go get golang.org/dl/go.x.y.z
已经过期了
$ go get golang.org/dl/go.1.15.6
$ go1.15.6 download
go: go.mod file not found in current directory or any parent directory.
'go get' is no longer supported outside a module.
To build and install a command, use 'go install' with a version,
like 'go install example.com/cmd@latest'
For more information, see https://golang.org/doc/go-get-install-deprecation
or run 'go help get' or 'go help install'.
starting in Go 1.17, installing executables with go get is deprecated. go install may be used instead.
https://go.dev/doc/manage-install#installing-multiple
现在(2023年11月4日)的方法
PS D:\ch1> go install golang.org/dl/go1.21.3@latest
PS D:\ch1> go1.21.3 download
Downloaded 0.0% ( 16384 / 73755567 bytes) ...
Downloaded 6.7% ( 4931584 / 73755567 bytes) ...
Downloaded 41.9% (30883648 / 73755567 bytes) ...
Downloaded 72.9% (53739120 / 73755567 bytes) ...
Downloaded 100.0% (73755567 / 73755567 bytes)
Unpacking C:\Users\windows_user\sdk\go1.21.3\go1.21.3.windows-amd64.zip ...
Success. You may now run 'go1.21.3'
PS D:\ch1> go1.21.3 version
go version go1.21.3 windows/amd64
标签:Chapter,GOPATH,复习,go1.21,get,Golang,go,install,Go
From: https://www.cnblogs.com/ninkaki/p/17809818.html