go mod是go的一个模块管理工具,用来代替传统的GOPATH方案。下面是基本的使用方法:
假设我现在想要创建一个项目来学习go的语法,项目名为grammar,路径为 E:/go/grammar。
1、进入grammar文件夹
2、初始化目录
go mod init dayrain.cn/grammar
dayrain.cn/grammar是一个标识,一般是 主机名+模块名
初始化后,会自动创建一个go.mod文件,有go的版本号,以及所依赖的模块信息。
3、导入自定义的模块
新建一个lib1包,写一个简单的加法函数
add.go
package lib1func Add(a int, b int) int {return a + b
}
在start.go中调用此方法
package mainimport ("dayrain.cn/grammar/lib1"
)func main() {res := lib1.Add(1, 1)print(res)
}
运行结果(go run start.go):
4、导入本地没有的模块
比如我想用日志打印刚才的res,可以修改start.go文件
package mainimport ("dayrain.cn/grammar/lib1""github.com/golang/glog")func main() {res := lib1.Add(1, 1)glog.Info(res)
}
这个时候vscode给出错误提示
运行 go build命令
提醒我们要先 go get github.com/golang/glog 获取模块
获取成功后,go.mod多了一行require。
常用命令
1、初始化模块
go mod init 模块名
2 、获取远程的模块
go get 模块名
3、 查看当前依赖模块
go list -m all
4、 清除未使用到的依赖
go mod tidy