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

最近在自学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 build的时候可以加上-x选项来输出详细的编译选项 大概流程是先把第三方用的库进行打包 然...
    jiqiren007阅读 5,234评论 0 7
  • 《鸟哥的Linux私房菜》笔记 提到Linux,就不得不提GNU和GPL授权所产生的自由软件(free softw...
    Zhang21阅读 12,898评论 0 15
  • go build 这个命令主要用于编译代码。在包的编译过程中,若有必要,会同时编译与之相关联的包。 如果是普通包,...
    今早上阅读 636评论 0 3
  • go run 编译并直接运行程序, 只会产生一个临时文件, 不会产生exe文件.调试的时候使用 go build ...
    神之试炼者阅读 1,054评论 0 0
  • 晚上静下来才想起今天的作业,给孩子打电话,询问他有什么愿望,可是电话一直打不通,这是在玩游戏的节奏,一直占线,只好...
    胡傲宣阅读 189评论 2 2