go的三个运行基本命令的区别,go run ,go build 和 go install

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了go的三个运行基本命令的区别,go run ,go build 和 go install相关的知识,希望对你有一定的参考价值。

参考技术A 最近在自学go,遇到点基础的问题,通过自己实际操作之后得出结论

在实际操作之前,我们需要知道go有三种源码文件:

      1,命令源码文件;声明自己属于main包,并且包含main函数的文件,每个项目只能有一个这样的文件,即程序的入口文件

      2,库源码文件;不能直接被执行的源码文件

      3,测试源码文件

本次操作不涉及测试源码文件。

go run : 编译并直接运行程序,不产生可执行文件,只产生临时文件,方便用户调试(即在bin目录和pkg目录不产生任何文件),其后只能+命令源码文件。

go build : 既可以+库源码文件,又可以+命令源码文件,主要功能是检查是否有编译错误

      +库源码文件:只是检查编译错误,不产生任何文件,如果库源码文件有语法错误,编译不通过会报错。

      +命令源码文件:产生一个可执行文件

go install : 执行的过程:编译库源码文件->编译命令源码文件->移动编译文件,命令源码文件的编译移到bin目录,库源码文件的编译移到pkg目录,这个移动目录的过程成为安装。

好了,go run , go build 和 go install三者的区别就到这里了。

Go基本运行编译命令解释

go run命令:

技术图片

 

 

 直接执行命令源码文件:一定要声明自己是在main包下,要是只有一个工作区,相应的文件就会存在bin文件下

 

go build:

技术图片

 

 

 把文件夹下的命令源码文件编译成直接运行文件,但是不能有多个命令源码文件

技术图片

 

 

go install

技术图片

 

可执行文件被移动到bin下,编译并且安装代码包或者源码文件,install进行了两步:1:生成结果文件,2:编译完的结果移动到pgk或者bin下

 

 

go get 将从远程仓库下的代码包下载到src下,如果加了-d,只会下载,不会安装

技术图片

 

 

 go doc 

文档工具

以上是关于go的三个运行基本命令的区别,go run ,go build 和 go install的主要内容,如果未能解决你的问题,请参考以下文章

go学习 1go run 命令

go语言学习笔记 — 基础 — go工具:编译后运行 —— go run

关于 go run 命令执行过程中的“坑坑点点”

Go开发实战 视频教程

Go-包管理(管理工具对比及go mod的使用)

vc++ 6.0里面的compile、build、go三个按钮是啥区别?