Go 自定义包引入失败:如何解决“包找不到”的问题?

go 自定义包引入失败:如何解决“包找不到”的问题?

Go 自定义包引入引发的“包找不到”问题

在 Go 开发中,自定义包的引入至关重要。然而,新手可能在引入过程中遇到“包找不到”的错误。本文将分析此问题的根源并提供解决方案。

问题描述:

一名初学者在引入 learn1 和 show2 两个自定义包时,遇到了以下错误:

`
E:Codegoproject>go build main.go
build command-line-arguments: cannot find module for path _/E_/Code/goproject/learn1
`

分析:

该错误表明 Go 无法找到 learn1 这个包。

解决方案:

提问者采用了相对路径引入的方式:

`
import (
"fmt"
"./learn1"
"./show2"
)
`

这种方式在 Go 1.11 之前的版本中是可行的,但从 1.11 开始,Go 引入了 modules 系统,它要求使用基于 URL 的导入路径。

要解决此问题,需要先使用 go mod init xxx 初始化一个 Go module。其中,xxx 是项目的名称。然后,将相对路径导入更改为绝对 URL 路径格式:

`
import (
"fmt"
"xxx/learn1"
"xxx/show2"
)
`

其中,xxx 替换为项目初始化时指定的名称。

如此修改后,重新编译即可解决“包找不到”的错误。

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