我应该如何使用带有 go 模块的子文件夹导入?

How should I use imports for subfolders with go modules?

我不确定子文件夹的导入。我的路径是“/home/username/go”,我的项目位于“/home/codeboxx/go/src/project”。 . 假设我的项目树看起来像这样:

- project
  - foldera
    - foldera.go
  - folderb
    - folderb.go
  - go.mod
  - go.sum
  - main.go

如果在我的 main.go 中导入类似“github.com/gorilla/mux”的内容,但在我的 foldera.go 中我也需要此导入,我该怎么做?显然我可以在我的 foldera.go 中再次导入“github.com/gorilla/mux”,但是如果我的模块名称类似于“potato”,我不能只做类似“[=23”的事情吗? =].com/gorilla/mux" 在我的 foldera.go?我想知道,因为我希望所有内容都与相同版本保持同步。我应该在每个子文件夹中为它们初始化一个 go.mod 吗?本地包我在 foldera.go.

中做类似“potato/somepackage”的事情没有问题

我可能误会了什么,但我一直在看google但我不明白..

感谢您的帮助!

无论如何他们都会使用相同的版本,只是因为它在不同的文件夹中并不意味着它会忽略根 go.mod