我在将本地 go 文件导入另一个 go 文件时遇到困难。我的项目结构如下-samplego--pkg--src---github.com----xxxx-----a.go-----b.go--bin我正在尝试在 b.go 中导入 a.go。我尝试了以下,import "a"import "github.com/xxxx/a"这些都没有奏效..我知道我必须干预 GOPATH,但我无法正确解决。目前我的 GOPATH 指向 samplego(/workspace/samplego)。我收到以下错误cannot find package "a" in any of:/usr/local/go/src/pkg/a (from $GOROOT)/workspace/samplego/src/a (from $GOPATH)另外,当这些源文件被导入另一个项目/模块时,GOPATH 是如何工作的?那么本地进口会成为问题吗?在这种情况下,最佳实践是什么 - 模块中是否只有一个 go 文件(带有相关测试)?
3 回答
慕田峪4524236
TA贡献1875条经验 获得超5个赞
只要您将a.go
和声明b.go
在同一个包中,就不需要导入。然后,您可以使用以下go run
方式识别多个文件:
$ go run a.go b.go
哔哔one
TA贡献1854条经验 获得超8个赞
./main.go(在主要包中)
./a/a.go(在包 a 中)
./a/b.go(在包 a 中)
在这种情况下:
main.go import "./a"
它可以调用 a.go 和 b.go 中的函数,首字母大写。
- 3 回答
- 0 关注
- 296 浏览
添加回答
举报
0/150
提交
取消