3.27 Go 模块入门|Go主题月

615 阅读2分钟

  上一章节中,我们简单的创建了一个模块,并简单的定义一个函数,接下来我们继续完成模块的创建。

代码编写

  在正式编写之前,确保我们之前创建的"问候"模块已经存在。即上一章节中,我们所创建的greetings模块。

  1. 创建另外一个目录hello,需要跟上面的greetings模块保持同一层级。
     ├── greetings
     └── hello
    
  2. 继续使用模块跟踪命令跟踪当前模块依赖变化。
    go mod init montos.com/hello
    
  3. 进行我们的hello.go代码编写。
    package main
    import (
        "fmt"
        "montos.com/greetings"
    )
    func main() {
        // Get a greeting message and print it.
        message := greetings.Hello("Gladys")
        fmt.Println(message)
    }
    
    这里简单的分析下该代码主要做了哪些事情:
    1. 首先声明该包为main包。(Go中运行代码入口必须声明在main包中)
    2. 导入两个包:fmt以及montos.com/greetings,其中后面是我们在上一节中自己创建的一个包这里是引用了。
    3. 通过调用greetings包里面的函数金子那个本地方法的执行。
  4. 编辑本地的hello模块使用本地的greetings模块。

      生产环境使用的情况下,我们是发布模块到我们私有仓库中,这里的演示我们直接是使用本地的模块。

    1. 在hello目录下的命令提示符中运行以下命令:
    go mod edit -replace=montos.com/greetings=../greetings
    
    使用该命令是指定代码中的引入包被我们本地包替代。 2. 使用命令同步当前依赖情况。
    [root@montos-prod hello]# go mod tidy
    go: found montos.com/greetings in montos.com/greetings v0.0.0-00010101000000-000000000000
    
  5. 最后运行当前代码环境。
[root@montos-prod hello]# go run .
Hi, Gladys. Welcome!

总结

  到此,我们完成了一个简单的依赖模块函数调用。这里通过本地模块导入依赖的方式进行函数的调用。简单的运行了一个函数,下一章节将会介绍我们如何在Go中处理错误并且友好的返回。