使用 VGO 和 go.mod 找不到 Go 模块

我正在使用版本化的 Go 命令来管理我的供应商,一切正常,但是当我运行go build它时找不到我的本地包


我已经在我的内部设置了模块根目录,go.mod但仍然出现错误


构建 foo:找不到路径的模块


项目拱门就像


foo/

|__src/github.com/username/package1/package1.go

|__src/github.com/username/package2/package2.go

|__src/github.com/username/package3/package3.go

|__main.go

|__go.mod

|__go.sum

所以我的go.mod样子


module foo


require (

    ...

)

我关注了https://research.swtch.com/vgo-tour但我不明白为什么这不起作用。


我的 Go 版本是1.11,当我在外面尝试时,foo文件夹在我的里面,这甚至不起作用。GOPATHGOPATH


我让它工作的唯一一次是做


module github.com/username/package1


require (

    ...

)

但是找不到其他两个包,我得到了与上面相同的错误。


我是不是漏掉了什么,或者我提供的模块路径是否必须更改?


汪汪一只猫
浏览 83回答 1
1回答

富国沪深

我假设您导入的本地包是错误的,请按照我的示例进行操作。有我的go.mod(例如GOPATH,我已经导入mux):module examplerequire github.com/gorilla/mux v1.6.2 // indirect顺便说一句,您可以创建一个空的go.mod,go将为您找到并更新您的go.mod。的main.go:package mainimport (    _ "example/src/foo" // local package    "fmt"    _ "github.com/gorilla/mux" // example import)func main() {    fmt.Println("foo")}本地foo包:package fooimport "fmt"func bar() {    fmt.Println("foo")}模块树:├── go.mod├── go.sum├── main.go└── src    └── foo        └── foo.go
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go