使用vscode作为Go语言开发环境遇到的问题总结

最近开始学习Go语言,在windows下面用vscode + go插件做开发环境遇到了一些问题:

  1. 代码补全不能用
  2. 代码定义和引用找不到

总结一下主要是go插件的使用,和gopath的设置问题

  1. go插件并没有为你做完所有事情,你需要自己用go get安装必要的外部包,或者点击右下角的Analysis Tools Missing 按钮,vscode可以帮你自动安装,这和命令行执行go get是一样的。
    另外,go get命令在windows下要注意加参数

    1
    go get -u -ldflags -H=windowsgui github.com/nsf/gocode

    这样可以避免windows服务器程序窗口挂起。

  2. gopath可以设置多个:我在本机环境变量中加了两个路径到GOPATH中,也在vscode设置中设置好了,但是只能够在标准库包中找到代码定义和引用的跳转,引用第三方库的时候就找不到了。经过一番研究,是vscode的设置问题,需要在gopath中把两个path都写上,举例如下

    1
    "go.gopath": "C:/path1;D:/path2"

    windows环境变量是用分号分隔,所以这里也用分号,写到一行里。这回vscode就可以跳转到外部包的定义和引用了