在windows系统中使用vscode进行开发的问题(代码无法提示)

kernel_kernel · 2020-04-13 23:32:51 · 1218 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2020-04-13 23:32:51 的主题,其中的信息可能已经有所发展或是发生改变。

有朋友用vscode在win10系统开发的吗? 主要就是代码无法提示。已经添加到工作区的情况下。 有些项目能提示有些项目不能提示,这些项目都是复制黏贴下来的。mod模式下,其它包都已经下载回来的了。还是会存在问题。


有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1218 次点击  
加入收藏 微博
3 回复  |  直到 2020-04-19 10:23:12
kernel_kernel
kernel_kernel · #1 · 5年之前

经过测试及与大神交流,终于知道问题了。 主要问题是有gopls的4.0版本引起。 首先必须要把"go.useLanguageServer": true,开启来。然后把项目加到工作区,并且文件夹只能是该项目的内容,如我起一个test项目,路径在C盘,test项目里面就有main.go和go.mod两个文件,那么我用vscode加到工作区的时候就只能直接加这个test文件夹,不然gopls这个工具会报错。而且别人拷贝给你的,或者你从github下载下来的包都不会有代码提示,如果有也是个别的。不是正常的预期效果。作者说会在下一个版本修复这个问题。

加了gopls之后,代码提示会超级快。

saberlong
saberlong · #2 · 5年之前
kernel_kernelkernel_kernel #1 回复

经过测试及与大神交流,终于知道问题了。 主要问题是有gopls的4.0版本引起。 首先必须要把"go.useLanguageServer": true,开启来。然后把项目加到工作区,并且文件夹只能是该项目的内容,如我起一个test项目,路径在C盘,test项目里面就有main.go和go.mod两个文件,那么我用vscode加到工作区的时候就只能直接加这个test文件夹,不然gopls这个工具会报错。而且别人拷贝给你的,或者你从github下载下来的包都不会有代码提示,如果有也是个别的。不是正常的预期效果。作者说会在下一个版本修复这个问题。 加了gopls之后,代码提示会超级快。

看描述应该是不支持多项目吧。这个之前的版本就有了,gopls目前不支持多项目。 另外linux下还有个问题,虽然现在gopls也支持GOPROXY走代理,但是没有使用系统的环境变量。需要在settings.json中额外设置go.toolsEnvVars。windows下没确认过是否存在同样问题。

kernel_kernel
kernel_kernel · #3 · 5年之前
saberlongsaberlong #2 回复

#1楼 @kernel_kernel 看描述应该是不支持多项目吧。这个之前的版本就有了,gopls目前不支持多项目。 另外linux下还有个问题,虽然现在gopls也支持GOPROXY走代理,但是没有使用系统的环境变量。需要在settings.json中额外设置go.toolsEnvVars。windows下没确认过是否存在同样问题。

对,作者说会在下一个版本修复这个问题。 另外我也弄清楚了vscode的问题了。只要你写go语言的时候,语法不正常,vscode的插件即可就会失效,无法代码提醒。例如我这个问题,其实是我go.mod不正确,从而导致不能进行代码提示。 要解决vscode代码不提醒的问题,1,确保go代码规范完全正确。2,在工作区中保持单项目开发。 如果遇到代码不规范的解决办法就是,直接在main目录下执行go run 命令,就会出现错误提示。

添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传