美文网首页
Go知识随记

Go知识随记

作者: 码农练功房 | 来源:发表于2022-04-05 22:06 被阅读0次

教程:

Go编程时光 — Go编程时光 1.0.0 documentation (iswbm.com)

常用命令:

go build:

完成源码的编译与可执行文件的生成。

如果参数为go文件或文件列表,则编译为一个个单独的包。

当编译单个main包(文件),则生成可执行文件。

当编译单个或多个包非主包时,只构建编译包,但丢弃生成的对象(.a),仅用作检查包可以构建。

当编译包时,会自动忽略'_test.go'的测试文件。

有用的命令选项:

选项
-n 打印编译时会用到的所有命令,但不真正执行
-x 打印编译时会用到的所有命令
-o output 指定编译输出的名称,代替默认的包名。

go run:

简单理解,go run 可等价于 go build + 执行。

go run不会将临时生成的可执行文件拷贝到当前目录。

go install:

go install 只是将编译的中间文件放在 GOPATH 的 pkg 目录下,以及固定地将编译结果放在 GOPATH 的 bin 目录下。

这个命令在内部实际上分成了两步操作:

  1. 第一步是生成结果文件(可执行文件或者 .a 包)。
  2. 第二步会把编译好的结果移到 $GOPATH/pkg 或者 $GOPATH/bin

go get:

go get 命令可以借助代码管理工具通过远程拉取或更新代码包及其依赖包,并自动完成编译和安装。

这个命令在内部实际上分成了两步操作:第一步是下载源码包,第二步是执行 go install。

参考文献:

  1. go build命令详解
  2. go get命令

Modules:

有了go modules后,可以不再依靠 $GOPATH,使得它可以脱离 $GOPATH 来创建项目。

进入项目目录,执行命令进行 go modules 的初始化:

go mod init  模块名字

初始化后,会生成 go.mod 文件。

项目中import到的第三方库,需要使用go get来下载,在开启了go modules情况下,go get的文件会下载到$GOPATH/pkg/mod 下。

  • go mod tidy :添加缺少的包,且删除无用的包。

参考文献:

  1. Go Modules 前世今生及入门使用
  2. iswbm (王炳明) (github.com)
  3. Go 模块--开始使用 Go Modules - 知乎 (zhihu.com)

相关文章

  • Go知识随记

    教程: Go编程时光 — Go编程时光 1.0.0 documentation (iswbm.com)[https...

  • 随记,Go 语言

    Go 语言 3 个环境配置,如下 GOROOT,GOPATH,GOBON 的简单介绍: GOROOT:Go 语言安...

  • go 语言随记

    以前有人跟我聊起go与java,我说go语言没有很好的异常处理机制,不像java,java中可以对异常进行统一处理...

  • go基础

    go 语言基础知识汇总

  • Go 语言程序设计(3)

    stacker.go 示例代码: stack.go 示例代码: 知识点: go 内置基础类型:布尔类型: bool...

  • 小猿圈怎么上之go语言使用第三方包操作示例

    对于go语言你了解多少,以前有过这方面知识的积累吗?小猿圈go语言讲师就给你分享发一些go语言的知识点,希望对你有...

  • Go 语言程序设计(5)

    polar2cartesian.go 示例代码: 知识点: Go 语言的并发依赖的并不是线程,而是协程 Go 语言...

  • GO、KEGG富集分析(一)有参情况

    一、GO分析的理论知识 what is Gene Ontology(GO)? 基因"本体论"Gene Ontolo...

  • 学习GO的目标

    目标 知识点Go中静态类型的优缺点Go的独特性Go所擅长的东西Go所面临的挑战 技能知道如何使用Go做数据模型知道...

  • 文章目录

    Go 源码解读篇 《Go源码解读篇》之常见数据结构(list) 《Go源码解读篇》之 Error 工作中知识总结 ...

网友评论

      本文标题:Go知识随记

      本文链接:https://www.haomeiwen.com/subject/mlelsrtx.html