我应该用go run运行服务器。或./main和有什么区别?

时间:2019-03-13 21:14:08

标签: go

我有一个Go服务器,通常这样运行:

li

但是在网上,我看到了许多使用go run的示例。哪个更好用?有什么区别?

1 个答案:

答案 0 :(得分:2)

摘自官方文档(go1.11):

go run-编译并运行命名的主Go程序包。

go build-编译由导入路径命名的包, 以及它们的依赖性,但不会安装结果。

go install-编译并安装由导入路径命名的软件包。

意思是:

通常对于本地环境,可以使用go run
但是对于PROD环境,最好使用go build构建应用并运行./main
但是如果需要Go工具链,则必须使用go install,因为它会安装软件包和依赖项并运行./bin/main(在开发/阶段环境中可能有意义)。