Я пытаюсь создать модуль, который содержит несколько пакетов, но я не понимаю, почему я получаю ошибки.
Компоновка:
λ ~/code/go-test/src/mod-test/ » tree
.
├── cmd
│ └── a.go
├── go.mod
├── main.go
└── pkg
└── foo
└── b.go
3 directories, 4 files
main.go:
package main
import (
"fmt"
"github.com/go-test/mod-test/cmd"
)
func main() {
fmt.Println("main")
A()
}
CMD / a.go:
package cmd
import (
"fmt"
"github.com/go-test/mod-test/pkg/foo"
)
func A() {
fmt.Println("a")
B()
}
упак / Foo / b.go:
package foo
import "fmt"
func B() {
fmt.Println("B")
}
go.mod:
module github.com/go-test/mod-test
go 1.12
Я получаю следующую ошибку:
λ ~/code/go-test/src/mod-test/ » go build
# github.com/go-test/mod-test/cmd
cmd/a.go:5:2: imported and not used: "github.com/go-test/mod-test/pkg/foo"
cmd/a.go:10:2: undefined: B
Может кто-нибудь помочь объяснить, что я сделал неправильно и почему я получаю ошибку?
Спасибо