Golang中如何导入相对路径
Golang中如何导入相对路径 我在go/src/conv.io目录下创建了一个文件夹。该文件夹包含两个文件:一个是main文件,另一个是conversion.go文件。
现在的问题是,我不知道如何从相对路径导入自定义文件夹。在我的情况下是"home/ali/go/src/conv.io/conversion"。

请帮助我
3 回复
如果它们有不同的包,就需要放在不同的文件夹中。
不允许在一个文件夹中包含多个包(测试包除外)。
在Go语言中,导入自定义包时需要使用完整的模块路径,而不是相对路径。根据你的描述,假设你的项目位于go/src/conv.io目录下,以下是正确的做法:
- 初始化模块:在项目根目录(
conv.io)下运行go mod init conv.io来创建go.mod文件。 - 导入包:在
main.go中使用import "conv.io/conversion"来导入conversion包。
示例代码结构:
conv.io/
├── go.mod
├── main.go
└── conversion/
└── conversion.go
main.go:
package main
import (
"fmt"
"conv.io/conversion"
)
func main() {
result := conversion.Convert("example")
fmt.Println(result)
}
conversion/conversion.go:
package conversion
func Convert(s string) string {
return "converted: " + s
}
确保在conversion.go中正确定义了包名(package conversion)和导出函数(首字母大写)。运行go run main.go即可正常工作。

