首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VS代码Go:$GOPATH/go.mod存在但不应该

VS代码Go:$GOPATH/go.mod存在但不应该
EN

Stack Overflow用户
提问于 2020-06-03 16:03:30
回答 2查看 8.1K关注 0票数 3

我正在尝试在带有go.mod的包中使用VS代码的Go特性(比如“Go to definition”)。但是,如果我进入存储库的主目录(使用go.mod)和code .,则会得到以下错误:

加载工作空间文件夹(预期为1,got为0)错误,file:///Users/kurt/Documents/http-enrollment-portal:错误:退出状态1: stderr:$GOPATH/go.mod存在但不应该加载视图

我读到可能需要更新gopls语言服务器,所以我按了Cmd + Shift +P,选择了"Go: Install/Update“并选择了gopls;然而,这也给了我同样的错误:

代码语言:javascript
复制
go.toolsGopath setting is not set. Using GOPATH /Users/kurt/Documents/http-enrollment-portal:/Users/kurt/go
Installing 1 tool at /Users/kurt/Documents/http-enrollment-portal/bin in module mode.
  gopls

Installing golang.org/x/tools/gopls FAILED

1 tools failed to install.

gopls:
Error: Command failed: /usr/local/opt/go@1.12/bin/go get -v golang.org/x/tools/gopls
$GOPATH/go.mod exists but should not
$GOPATH/go.mod exists but should not

奇怪的是,“进入定义”在其他存储库中确实有效。我认为一个可能的解决方案是设置go.toolsGopath

EN

回答 2

Stack Overflow用户

发布于 2021-05-21 16:36:53

我也有过类似的问题。因此,为了解释一下,我使用https://www.mongodb.com/blog/post/quick-start-golang-mongodb-starting-and-setup来尝试Go中的Mongodb。在VS代码中,我首先安装了go mod init quickstart,然后使用了go get go.mongodb.org/mongo-driver并得到了错误$GOPATH/go.mod exists but should not。我以前根据https://www.freecodecamp.org/news/setting-up-go-programming-language-on-windows-f02c8c14e2f/设置了我的GOPATH (请参阅本页的第三阶段)。我进入了我的Windows环境变量并删除了我的GOPATH。在Windows10Start菜单上,转到System,然后Advanced system settingsAdvanced选项卡下单击Environment Variables按钮,我删除了GOPATH变量。接下来,在VS代码中,我再次尝试go get go.mongodb.org/mongo-driver,它可以工作。

票数 1
EN

Stack Overflow用户

发布于 2022-06-22 03:25:23

代码语言:javascript
复制
  go env -w GOPATH=  

GOPATH和模

此链接

在使用模块时,GOPATH不再用于解析导入。但是,它仍然用于存储下载的源代码(在GOPATH/pkg/mod中)和编译命令(在GOPATH/bin中)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62177371

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档