Goland 无法使用 Go 1.14 识别我的供应商目录

Goland does not recognise my vendor directory with Go 1.14

当我打开我的Goland项目时,下面的命令是运行:

/usr/local/Cellar/go/1.14/libexec/bin/go list -m -json all #gosetup

它的输出是以下错误:

go list -m: can't compute 'all' using the vendor directory
    (Use -mod=mod or -mod=readonly to bypass.)

Goland 无法解析我正在导入的包。 当我从命令行构建并 运行 项目时,它工作正常。

我的项目结构如下:

app/
    bin/
    pkg/
    src/
        app/
            cmd/
            vendor/
            go.mod

我的GOROOT/usr/local/Cellar/go/1.14/libexec,我的GOPATHapp/

在 Goland 设置中,在 Go/GOPATH 下选中了 "Use GOPATH that's defined in system environment" 和 "Index entire GOPATH" 的复选框。

在Go/Go模块(vgo)下,我检查了"Enable Go Modules (vgo) integration"和"Vendoring mode"

我刚刚注意到当我将GOPATH更改为/Users/myname/sdk/go1.13.4时,问题就解决了。这可能是 Homebrew 的问题还是我不​​知道的 go 1.14 引入的更改?

由于我不熟悉 Go 并且可能遗漏了一些明显的东西,所以我在描述问题时会很详尽。 谢谢!

由于 Go 1.14 中的工具更改,这是 Go 模块和供应商支持的一个已知问题。

因此,请尝试 IDE、https://jetbrains.com/go/nextversion 的 EAP 版本,其中包含对此的修复。

我们正在 https://youtrack.jetbrains.com/issue/GO-8855 下跟踪此问题,并考虑将其反向移植到 2019.3 发布周期。

在 Goland 中禁用 Go 模块集成对我有用

文件->首选项->Go->Go模块->启用Go模块集成