命令 go build
和 go install
将文件编译成二进制文件。 go run
命令会将文件编译还是解释执行呢?我在网上找不到解释,可能是我漏看了。感谢指点。谢谢!
命令 go build
和 go install
将文件编译成二进制文件。 go run
命令会将文件编译还是解释执行呢?我在网上找不到解释,可能是我漏看了。感谢指点。谢谢!
这更或多或少相当于运行go build X.go -o /tmp/random-tmp-folder/exe && /tmp/random-tmp-folder/exe
go run temp.go
后,我会发现有两个进程在运行。其中一个显示使用的命令是 go run temp.go
,而另一个则更像是你所说的。 - Curious/tmp
。 - OneOfOnego run
命令会编译并运行由命令行指定的 .go 文件组成的主包。该命令被编译到一个临时文件夹中。
go build
和 go install
会检查目录中的文件,以确定哪些 .go 文件包含在主包中。
go run
命令在后台执行项目构建(也就是说,它会构建项目)。
而使用 --work
标志(go run --work main.go
),您可以查看临时构建文件的位置。
此外,在官方文档(go1.11
)中,您可以找到以下内容:
go run
- 编译并运行命名的 Go 主包。
go build
- 编译由导入路径指定的软件包及其依赖项,但不会安装结果。
go install
- 编译并安装由导入路径指定的软件包。
和Java不同,Go语言创建的是一个依赖于特定机器的可执行文件,类似于C、C++。
go help run
以了解该命令的说明。 - Charlie Tumahai-x
选项运行其中任何一个命令,将会显示执行的所有命令。 - JimB