gpt4 book ai didi

go - 目录结构和导入

转载 作者:行者123 更新时间:2023-12-01 22:31:52 28 4
gpt4 key购买 nike

我不明白包/项目目录结构是如何工作的。
我正在关注这两个链接 enter link description hereenter link description here

我的 Go 工作区位于/workspace/golang 下。
我的 $GOPATH等于 /workspace/golang
我的目录结构如下:

/workspace/golang/src/Tutorial/
...tutorial_main.go <- Default 'Hello World' program
...library/
......arithmetic.go

算术.go 的内容:
package library

func addNum(a int, b int) int {
return a + b
}

cd进入库文件夹并运行 go build arithmetic
现在,我无法弄清楚如何在我的 tutorial_main.go 文件中使用我的算术.go。
我尝试了以下方法:
import "library"
fmt.Println("Result : ", library.addNum(1,4))

import "Tutorial/library"
fmt.Println("Result : ", library.addNum(1,4))

import "src/Tutorial/library"
fmt.Println("Result : ", library.addNum(1,4))

两者都不起作用。
它一直说找不到 library我不明白我做错了什么。

最佳答案

通过您的设置,包导入路径为:

import "Tutorial/library"

并且您应该将要在库包中导出的名称大写,以便您可以从其他包中访问它们。

一般来说,导入路径如果是本地的话就是包的文件路径(相对于$GOPATH),或者包的远程路径,比如 github.com/myaccount/package .简单的导入名称,例如 import library为内置包保留。相对导入路径也可以,但不推荐使用,即 import ./library .

也就是说,不再使用模块系统 $GOPATH 。我建议您阅读模块以及如何在 $GOPATH 之外工作。

关于go - 目录结构和导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59039542/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com