去运行找不到包

Bha*_*rat 0 packages go

我有基于样本项目设置文章。

这是我的目录结构:

goloang/
??? fooproject
    ??? src
       ??? foo
       ?   ??? foo.go
       ??? fooer
           ??? fooer.go
Run Code Online (Sandbox Code Playgroud)

我已经设置了 GOTPATH

$ echo $GOPATH
/Users/Bharat/Dev/golang/fooproject
Run Code Online (Sandbox Code Playgroud)

我正在尝试运行,foor.go但即使它存在于GOPATHie in引用的位置中,我也会收到找不到包错误src/foo

这是我运行它的方式:

$ pwd
/Users/Bharat/Dev/goloang/fooproject/src/fooer

$ go run fooer.go 
fooer.go:4:3: cannot find package "foo" in any of:
    /usr/local/go/src/foo (from $GOROOT)
    /Users/Bharat/Dev/golang/fooproject/src/foo (from $GOPATH)
Run Code Online (Sandbox Code Playgroud)

这些是文件内容。

src/foo/foo.go

package foo

import (
  "fmt"
)

func Bar() {
  fmt.Println("bar")
}
Run Code Online (Sandbox Code Playgroud)

src/fooer/fooer.go

package main

import (
  "foo"
)

func main() {
  foo.Bar()
}
Run Code Online (Sandbox Code Playgroud)

当我尝试这样做时,我遇到了同样的错误go build fooer.go

项目结构哪里出了问题?

Von*_*onC 5

那可能是因为一个错字:

goloang
instead of
golang
Run Code Online (Sandbox Code Playgroud)

你有:

$ echo $GOPATH
/Users/Bharat/Dev/golang/fooproject
                  ^^^^^^
$ pwd
/Users/Bharat/Dev/goloang/fooproject/src/fooer
                  ^^^^^^^
Run Code Online (Sandbox Code Playgroud)