Golang编译错误:找不到导入的包。

huangapple go评论87阅读模式
英文:

golang compile error: can't find import

问题

我正在尝试在目录$GOPATH/src/call/httptest中运行go build命令:

maks@myMac ~/Dropbox/golang/src/call/httptest $ go build
# call/httptest
./domain.go:4: 找不到导入: "call"

出现错误./domain.go:4: 找不到导入: "call"

domain.go文件的开头部分:

package httptest

import (
	"call" // 第4行 - 错误出现在这里
)

我可以成功在$GOPATH/src/call目录中构建:

maks@myMac ~/Dropbox/golang/src/call $ go build

为什么我无法在$GOPATH/src/call/httptest/domain.go文件中导入call,尽管call$GOPATH/src目录中存在?

Gopath的值如下:

$ echo $GOPATH
/Users/maks/Dropbox/golang

$ go version
go version go1.4.3 darwin/amd64

#更新

$ go env
GOARCH="amd64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/maks/Dropbox/golang"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fno-common"
CXX="clang++"
CGO_ENABLED="0"
英文:

I am trying to run go build command in a directory $GOPATH/src/call/httptest:

maks@myMac ~/Dropbox/golang/src/call/httptest $ go build
# call/httptest
./domain.go:4: can't find import: "call"

Have error ./domain.go:4: can't find import: "call"

The beginning of domain.go file:

package httptest

import (
	"call" // line 4 - error is here
)

I can successfully build in $GOPATH/src/call directory:

maks@myMac ~/Dropbox/golang/src/call $ go build

Why can't I import call in $GOPATH/src/call/httptest/domain.go file although call is in $GOPATH/src directory?

Gopath is the following:

$ echo $GOPATH
/Users/maks/Dropbox/golang

$ go version
go version go1.4.3 darwin/amd64

#Update

$ go env
GOARCH="amd64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/maks/Dropbox/golang"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fno-common"
CXX="clang++"
CGO_ENABLED="0"

答案1

得分: 1

这是一个“缓存”问题。在我更改$GOPATH/src/call中的几行代码后,我能够在$GOPATH/src/call/httptest中构建而不出现导入错误。

英文:

It was kinda "cache" issue. After I change couple lines in $GOPATH/src/call, I become able to build in $GOPATH/src/call/httptest without that import error.

huangapple
  • 本文由 发表于 2015年10月30日 14:31:24
  • 转载请务必保留本文链接:https://go.coder-hub.com/33430025.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定