You*_*cha 9 go goland go-modules
当我打开 Goland 项目时,会运行以下命令:
/usr/local/Cellar/go/1.14/libexec/bin/go list -m -json all #gosetup
Run Code Online (Sandbox Code Playgroud)
它的输出是以下错误:
go list -m: can't compute 'all' using the vendor directory
(Use -mod=mod or -mod=readonly to bypass.)
Run Code Online (Sandbox Code Playgroud)
Goland 无法解析我正在导入的包。当我从命令行构建和运行项目时,它工作正常。
我的项目结构如下:
app/
bin/
pkg/
src/
app/
cmd/
vendor/
go.mod
Run Code Online (Sandbox Code Playgroud)
我GOROOT的/usr/local/Cellar/go/1.14/libexec和我GOPATH的app/。
在 Goland 设置中,在 Go/GOPATH 下选中了“使用系统环境中定义的 GOPATH”和“索引整个 GOPATH”的框。
在 Go/Go 模块 (vgo) 下,我已选中“启用 Go 模块 (vgo) 集成”和“供应商模式”
当我改变了我刚才注意到GOPATH到/Users/myname/sdk/go1.13.4,问题就解决了。这可能是 Homebrew 的问题,还是我不知道的 go 1.14 引入的更改?
我在描述这个问题时详尽无遗,因为我不熟悉 Go,可能会遗漏一些明显的东西。谢谢!
dls*_*per 11
由于 Go 1.14 中的工具更改,这是 Go 模块和供应商支持的一个已知问题。
因此,请尝试使用 EAP 版本的 IDE,https://jetbrains.com/go/nextversion,其中包含对此的修复。
我们正在https://youtrack.jetbrains.com/issue/GO-8855下对此进行跟踪,并考虑将其反向移植到 2019.3 发布周期。