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 自定义包引入失败:如何解决“包找不到”的问题?的详细内容,更多请关注www.sxiaw.com其它相关文章!