二者区别: go build 将相关依赖库一起打包,可以在任意机器运行,go run 需要go环境支持
介绍:go.mod是golang1.11版本引入的官方包管理工具用于解决之前没有地方记录依赖包具体版本的问题,方便依赖包的管理。
官方定义:modules是相关go包的集合,是源代码交换和版本控制的单元。go命令直接支持使用modules,包括记录和解析对其他模块的依赖性。modules替换旧的集合GOPATH(工作目录,不在需要将项目放置于工作目录下,只需要初始化项目生成go.mod文件即可),来指定使用那些源文件。modules和传统的GOPATH不同,不需要包含例如src,bin这样的子目录,一个源代码目录甚至是空目录都可以作为modules,只要其中包含go.mod文件
使用命令:go mod init + 模块名称 初始化模块(go mod init hello)
使用go.mod:通过go env查看配置