在这最后一个主题,你会学习两个新的go命令,虽然go run命令是你改变代码后 编译和运行代码的最有用的命令,但这并不能生成可执行的文件
本节,介绍了两个构建代码的命令:
- go build 命令用来将包及其依赖项编译,不过不会安装
- go intstall 命令是用来编译并安装包<注:说了一大片,就是叫你咋添加系统环境变量,这就是所谓的install>
<注:本章就是说明了如何使用环境变量,有点注意,当使用了go install后,可执行文件会默认生成到 goPath路径下,系统会优先调用此目录下的同名文件,切记. 用go env 可以看 goPath的路径>
1.在hello目录下,运行run build命令,以编译代码成为可执行文件
$ go build
2.在hello路径下,运行可执行文件 hello,以确保能够工作
注意,你的结果可能和下面的展示有点不一样.这和你测试的内容有关
在linu 或 mac:
$ ./hello
map[Darrin:Great to see you, Darrin! Gladys:Hail, Gladys! Well met! Samantha:Hail, Samantha! Well met!]
在windows:
$ hello.exe
map[Darrin:Great to see you, Darrin! Gladys:Hail, Gladys! Well met! Samantha:Hail, Samantha! Well met!]
当你编译成为可执行程序后,你就能运行它了,不过,你需要在可执行文件所在路径下,次啊能运行它
接下来,你将把这个可执行程序安装一下,这样你就可以不用指定路径啦.
3.查找Go安装路径,Go命令将在其中安装当前软件包
运行go list命令,你能发现安装路径
$ go list -f '{{.Target}}'
例如,命令的输出可能是/home/gopher/bin/hello,这意味着二进制文件已安装到/home/gopher/bin。在下一步中,您将需要此安装目录。
4.将Go install目录添加到系统的shell路径
这样,您就可以运行程序的可执行文件,而无需指定可执行文件的位置。
Linux or Mac:
$ export PATH=$PATH:/path/to/your/install/directory
windows:
$ set PATH=%PATH%;C:path oyourinstalldirectory
作为替代方案,如果您的shell路径中已经有一个类似$HOME/bin的目录,并且您希望在那里安装Go程序,则可以通过使用Go env命令设置GOBIN变量来更改安装目标:
$ go env -w GOBIN=/path/to/your/bin
$ go env -w GOBIN=C:path oyourin
5.一旦你更新了shell路径,运行 go install命令编译和安装包
$ go install
6.只需键入应用程序的名称即可运行应用程序。请打开一个新的命令提示符,并在其他目录中运行hello可执行文件名。
$ hello
map[Darrin:Hail, Darrin! Well met! Gladys:Great to see you, Gladys! Samantha:Hail, Samantha! Well met!]
这就是,本指南的所有内容