1

我将 Goland 2017.3 与 Go 1.9.2 一起使用,并有一个带有复制 DigitalOcean monorepo 的 govendor 的自定义 GOPATH,如下所述:https ://blog.digitalocean.com/cthulhu-organizing-go-code-in-a -可扩展回购/

结构如下所示:

gocode
├── .env.sh
├── bin
├── src
│   └── acmecorp
│       ├── teams
│       └── vendor
├── pkg

.env.sh看起来像这样:

SCRIPT=`python -c "import os,sys; print(os.path.realpath(os.path.expanduser(sys.argv[1])))" "${0}"`
GOCODE=$(dirname $SCRIPT)
export GOPATH="$GOCODE"
export PATH="$PATH:$GOPATH/bin"

source .env.sh我用and构建代码没有问题govendor buildgovendor解决所有依赖关系并构建项目。

但是,当我尝试GOPATH在 GoLand 中设置并设置PROJECT GOPATH为 时$HOME/gocode,GoLand 停止识别标准库,因为它开始在vendor:中查找标准库$HOME/gocode/src/acmecorp/vendor/time has no buildable Go source files。如果我删除PROJECT GOPATH它,它会找到 stdlib,但不会找到 mono repo 中的代码。

我怎样才能让 GoLand 停止寻找标准库vendor

编辑:GOROOT在 IDE 中保持为标准:GOROOT 的屏幕截图

4

1 回答 1

0

请在 tracker tracker https://youtrack.jetbrains.com/issues/Go上打开一个问题,并通过 Help | 附加 IDE 日志。收集并显示日志...。您可以将日志的可见性锁定为jetbrains-team并且GoLand team仅使日志不可公开访问。

这看起来像是 IDE 中的错误或您这边的配置问题,但如果没有日志,很难分辨出哪个。谢谢你。

于 2017-12-22T21:00:22.903 回答