go mod 的操作

1 使用 go mod 创建项目并使用

  1. 通过命令初始化项目
# go mod init 项目名称
go mod init go_mod_testdemo
  1. 编写业务逻辑
  • 引用本项目的包
  • 引用外部依赖的包
image-20220529114505440.png
// simple_calc.go
package calc

func Add(num1, num2 int) int {
    return num1 + num2
}

func Sub(num1, num2 int) int {
    return num1 - num2
}
// main.go
package main

import (
    "fmt"
    "github.com/spf13/cast"
    "go_mod_testdemo/calc"
)

func main() {
    fmt.Println("Hello World!")
    // 1.使用本项目的包
    fmt.Println(calc.Add(12, 10))
    fmt.Println(calc.Sub(12, 10))
    // 2.使用外部依赖的包
    fmt.Println(cast.ToString(8))
}
# result
Hello World!
22
2
8

2 引入依赖的方法

  1. 使用 GoLand 的方式引入第三方依赖
image-20220529114647835.png
  1. 使用 go get 命令引入第三方依赖
# 1 引入最新的第三方依赖
# -u 强制使⽤⽹络去更新包和它的依赖包
# -v 显示执行的命令
go get -u -v "github.com/spf13/cast" 

# 2 指定引入的依赖版本
go get -u -v "github.com/spf13/[email protected]"
  1. 下载所有相关依赖,并删除不需要的模块
go mod tidy

3 自己生成模块,并引用

  1. 在 github 上创新项目
image-20220529120029383.png
  1. 编写代码
package calc

func Add(num1, num2 int) int {
    return num1 + num2
}

func Sub(num1, num2 int) int {
    return num1 - num2
}
  1. go init 初始化项目
go mod init github.com/yaokuku123/calc
image-20220529120218123.png
  1. 上传至 github
image-20220529120326172.png
  1. 其他人开发时候可以直接引用我们开发的模块的功能
// main.go
package main

import (
    "fmt"
    "github.com/spf13/cast"
    "github.com/yaokuku123/calc"
)

func main() {
    fmt.Println("Hello World!")
    // 1.使用本项目的包
    fmt.Println(calc.Add(12, 10))
    fmt.Println(calc.Sub(12, 10))
    // 2.使用外部依赖的包
    fmt.Println(cast.ToString(8))
}
// go.mod
module go_mod_testdemo

go 1.16

require (
    github.com/spf13/cast v1.5.0
    github.com/yaokuku123/calc v0.0.0-20220529040250-978f7056ffb4
)

你可能感兴趣的:(go mod 的操作)