为了账号安全,请及时绑定邮箱和手机立即绑定

Go build 找不到包

Go build 找不到包

Go
互换的青春 2021-07-26 10:40:26
问题通过查看相关问题,我无法找到解决方案。我不知道是什么让我的 Go 环境与规范设置不同。go env 返回GOROOT="/usr/lib/go"GOBIN=""GOARCH="386"GOCHAR="8"GOOS="linux"GOEXE=""GOHOSTARCH="386"GOHOSTOS="linux"GOTOOLDIR="/usr/lib/go/pkg/tool/linux_386"GOGCCFLAGS="-g -O2 -fPIC -m32 -pthread"CGO_ENABLED="1"tree $GOPATH 返回/home/USER/go├── bin├── pkg│   └── linux_386│       └── bitbucket.org│           └── USER-NAME│               └── PROJECT│                   └── my_package.a└── src    └── bitbucket.org        └── USER-NAME            └── PROJECT                ├── main                │   ├── main.go                └── my_package                    └── my_package.go(全部大写是替换)main.go 包含package mainimport (        "bitbucket.org/USER-NAME/PROJECT/my_package")func main() {        my_package.Foo()}go build在main目录中调用返回import "my_package": cannot find package沃尔克指出,也go env应该返回一个GOPATH条目。env 命令的来源证实了这一点。但是,echo $GOPATH在 bash 或os.Getenv("GOPATH")Go 中运行都返回\home\USER\go. 我不确定为什么go env.解决方案当我遇到这个问题时,我正在运行 Go 1.0。当我升级到 Go 1.2.1 时,问题消失了。
查看完整描述

2 回答

?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

您没有设置(或导出)GOPATH。GOPATH 比 GOROOT 重要得多(至少在新的 Go 版本中)。


查看完整回答
反对 回复 2021-08-02
  • 2 回答
  • 0 关注
  • 256 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信