引言

使用VsCode进行Go程序开发,我们肯定会碰到一些问题,这些问题有些是IDE的配置问题,有些是下载包的版本不一致问题,本文主要针对在开发过程中碰到的问题做一个简单的回顾和整理。

前期准备,必看

在进行问题纠错前,先确保自己正确下载了golang的官方工具集go-tool,如果不确定,就跟着我的步骤操作一遍,可能操作后,你的问题就解决了。

1、配置golang的源。

go env -w GOPROXY=https://goproxy.cn,direct

然后我们进行golang工具的默认工具服务下载:

2、Windows平台按下Ctrl+Shift+P,Mac平台按Command+Shift+P,这个时候VS Code界面会弹出一个输入框

3、我们在这个输入框中输入>go:install,下面会自动搜索相关命令,我们选择Go:Install/Update Tools这个命令,按下图选中并会回车执行该命令

在弹出的窗口选中所有,并点击“确定”按钮,进行安装。

等待安装完成,因为国内网络的特殊性,所以一定要谁知好go的代理源,不然总是下载失败。

执行这一步之后,重启Vscode,如果这个时候能够解决你的问题,那就不需要再往下看了。

具体问题解决方案

如果以上步骤不能解决你的问题,那就可以对应自己的问题来进行操作设置了。

一、VSCode中F12无法跳转

通用设置

点击左下角点击齿轮,选择设置界面(也可以直接快捷键CTRL+, 点击用户-扩展-go。进行如下设置

1、DocsTool修改成godoc

2、Use Language Server 去掉勾选

3、重启VsCode

go mod模式

如果进行上述操作后还是不行,并且你是使用的go mod 模式,那还有一种比较特殊的方式可以解决这个问题。

执行命令go mod vendor导入依赖,这一步会将依赖转移至该项目根目录下的 vendor(自动新建) 文件夹下

此时F12就可以进行代码跳转了。

二、代码自动带出功能失效

这个问题一般都是因为 go mod模式的切换导致的。如果你的项目是使用的Gopath模式(如果有同学对Gopath和Gomod这俩种模式不了解的,可以看看我的文章如何看待go moudle并应用于工作),那么你需要设置

go env -w GO111MODULE=off

这时候自动带出功能就可能正确使用了

如果你使用的是go mod模式,设置

go env -w GO111MODULE=on

自动带出功能也可以恢复正常。

文章参考

go module 基本使用

vscode go 未找到任何定义

关于我

我的博客|文章首发

最后

本文到此结束,希望对你有帮助

如果还有什么疑问或者建议,可以多多交流,原创文章,文笔有限,才疏学浅,文中若有不正之处,万望告知。

更多精彩技术文章汇总在我的 公众号【程序员工具集]】,持续更新,欢迎关注订阅收藏。

在vscode中go编码发生的问题整理的更多相关文章

  1. 说说http协议中的编码和解码

    http://www.csdn1 2 3.com/html/itweb/20130730/29422_29378_29408.htm ****************************** 一. ...

  2. vscode中编译输出c++是乱码

    vscode中编译输出c++是乱码的解决 环境说明:windows下面运行vscode win + R 右键属性 查看当前编码状态 知道当前环境的编码格式后,可以改变vscode上c++的格式 点击v ...

  3. 在vscode中怎样debug调试go程序

    随着互联网时代的飞速发展,我们编码使用的开发利器也在不断更新换代,古话说工欲善其事必先利其器,对于Java开发者而言,eclipse和idea这两款神器各有千秋,因自己的爱好可以选取不同的IDE,但是 ...

  4. 如何在Vue项目中,通过点击DOM自动定位VScode中的代码行?

    作者:vivo 互联网大前端团队- Youchen 一.背景 现在大型的 Vue项目基本上都是多人协作开发,并且随着版本的迭代,Vue 项目中的组件数也会越来越多,如果此时让你负责不熟悉的页面功能开发 ...

  5. python语言中的编码问题

    在编程的过程当中,常常会遇到莫名其妙的乱码问题.很多人选择出了问题直接在网上找答案,把别人的例子照搬过来,这是快速解决问题的一个好办法.然而,作为一个严谨求实的开发者,如果不从源头上彻底理解乱码产生的 ...

  6. WebGIS中GeoHash编码的研究和扩展

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.背景 1.1普通地理编码流程 将采集的POI入库后,数据库里保存有 ...

  7. 理清Java中的编码解码转换

    1.字符集及编码方式 概括:字符编码方式及大端小端 详细:彻底理解字符编码 可以通过Charset.availableCharsets()获取Java支持的字符集,以JDK8为例,得到其支持的字符集: ...

  8. JS中new到底发生了什么

    outline prototype 与 __proto__ function 与 object new 到底发生了什么 prototype 与 __proto__ 首先说下在JS中比较容易让人困惑的  ...

  9. 聊聊python 2中的编码

    为什么需要编码: 计算机可以存储和处理二进制,那么从文字到计算机可以识别的二进制之间需要对应的关系,于是便有了ASCII,ASSCII使用7位字符,由于1byte=8bit,所以最高位补一个0,使用8 ...

随机推荐

  1. 51nod 1384 可重集的全排列

    对于1231,121,111等有重复的数据,我们怎么做到生成全排列呢 实际上,对于打标记再释放标记的这种方法,如果一开始第一层递归访问过1那么你再访问 就会完全重复上一次1开头的情况,那么递归地考虑这 ...

  2. sqll-libs(3)

    单引号测试,最外层单引号错误信息near ''1'') LIMIT 0,1' at line 1 由此我们可以确定SQL后台语句为select * from table where id =('inp ...

  3. 力扣1689. 十-二进制数的最少数目-C语言实现-中等难度题

    题目 传送门 如果一个十进制数字不含任何前导零,且每一位上的数字不是 0 就是 1 ,那么该数字就是一个 十-二进制数 .例如,101 和 1100 都是 十-二进制数,而 112 和 3001 不是 ...

  4. cnblogs 日期错乱 bug

    cnblogs 日期错乱 bug 时间错乱 bug archive/2004/01/13/ 什么鬼 呀默认时间戳 https://www.cnblogs.com/xgqfrms/archive/200 ...

  5. taro 如何展示多行文本 省略号

    taro 如何展示多行文本 省略号 webkit-box-orient: vertical; See the Pen Pure CSS multiline text with ellipsis by ...

  6. MBP & battery

    MBP & battery 实际:3 + 1 个小时左右 4 个小时左右 shit apple 10 小时 Chrome bug https://appleinsider.com/articl ...

  7. TS & error

    TS & error Function implementation is missing or not immediately following the declaration.ts ht ...

  8. WebAssembly JavaScript APIs

    WebAssembly JavaScript APIs https://developer.mozilla.org/en-US/docs/WebAssembly/Using_the_JavaScrip ...

  9. oracle 中的左外连接、右外连接、全连接

    左外连接 左外连接 全连接1.左外连接:表1 left [outer] join 表1 on 条件 在等值连接的基础上会把表1中的其他内容也展示出来 而表2只会显示符合条件的内容 . outer 可省 ...

  10. java高并发编程基础之AQS

    引言 曾经有一道比较比较经典的面试题"你能够说说java的并发包下面有哪些常见的类?"大多数人应该都可以说出 CountDownLatch.CyclicBarrier.Sempah ...