golang 的go build、go install 命令都是可生成可实行文件,了解它们的小区别以选择适合自己的。
go install
和 go build
在没有参数时运行,都会在当前目录下编译,如果当前目录是软件主程序(package main
)
go build
会生成可实行文件放在当前目录中go install
则会把它放到$GOPATH/bin
中。
go install
还会把导入的依赖包编译到 $GOPATH/pkg
,并缓存,如果包未做更改,下次编译则直接使用缓存。 go build
命令加参数 -i
也能达到go install
的效果。
如果当前目录是非主包,则go install
直接把编译结果安装到 $GOPATH/pkg
。
如果项目很大,每次编译都要花很长时间,则建议使用 go install
来编译,充分利用它对依赖包的缓存功能。
有疑问加站长微信联系(非本文作者)