go build与go install
1.作用
go build:用于测试编译包,在项目目录下生成可执行文件.exe(有main包)。
go install:主要用来生成库和工具。一是编译包文件(无main包的文件),将编译后的包文件放到 pkg 目录下($GOPATH/pkg)。二是编译生成可执行文件(有main包的文件),将可执行文件放到 bin 目录($GOPATH/bin)。
相同点
都能生成可执行文件
不同点
go build 不能生成包文件, go install 可以生成包文件
go build 生成可执行文件在当前目录下, go install 生成可执行文件在bin目录下($GOPATH/bin)
使用
环境介绍
$GOPATH/pkg 即图片中的 pkg 目录
$GOPATH/bin 即图片中的 bin目录
$GOPATH/src 即图片中的 src目录
test1.go
package main
import "fmt"
func main(){
fmt.Println("test1")
}
test2.go
package pack1
import "fmt"
func test () {
fmt.Println("test2")
}
使用go build
F:\go>cd src\example
F:\go\src\example>go build
在example目录下生成可执行程序example.exe
使用 go install
F:\go>cd src\example
F:\go\src\example>go install
编译 test1.go 在 bin 目录下生成可执行文件example.exe
F:\go>cd src\example\pack1
F:\go\src\example\pack1>go install
编译 test2.go 在 pkg目录下生成包文件pack1.a