自学 Go 语言:如何解决自定义包引入失败问题?

自学 go 语言:如何解决自定义包引入失败问题?

自学 go 语言遇阻:无法引入自定义包

在自学 go 语言的过程中,有同学遇到了在引入自定义包时遇到包不存在的问题。本文将深入探讨这个问题及其解决方案。

引入自定义包遇到的问题

根据同学提供的截图,在自学过程中,自定义了一个名为 calc 的包,但试图引入该包时出现了包不存在的提示。

原因分析

这个问题的根源在于 go 语言的模块机制。go 1.11 版本引入的模块机制对包引入进行了变更,使得不能直接引入位于项目根目录之外的包。

解决方案

要解决这个问题,需要按照以下步骤进行操作:

  1. 初始化项目模块:在项目根目录下执行 go mod init mymod 命令,其中 mymod 为自定义模块的名称。
  2. 修改包引用:在代码中,将 import "calc" 修改为 import "mymod/calc"。
  3. 整理模块:执行 go mod tidy 命令整理模块依赖关系。

修改后的示例代码:

package main

import (
    "fmt"

    "mymod/calc"
)

func main() {
    fmt.Println(calc.Add2(1, 2, 3, 4))
}

执行 go run 21.go 命令,即可正常运行带有自定义包的程序。

以上就是自学 Go 语言:如何解决自定义包引入失败问题?的详细内容,更多请关注其它相关文章!