zoukankan      html  css  js  c++  java
  • 解决 VS Code 中 golang.org 被墙导致的 Go 插件安装失败问题

    微软官方开发的 Go for Visual Studio Code 插件为 Go 语言 提供了丰富的支持。在 VS Code 中首次打开 Go 工作区后,VS Code 会自动检测当前开发环境为 Go 并推荐安装上述插件。

    然而 Go 插件的安装并不顺利:输出窗口的安装信息提示其中一些依赖工具安装失败:

    Installing github.com/mdempsky/gocode FAILED
    Installing github.com/ramya-rao-a/go-outline FAILED
    Installing github.com/acroca/go-symbols FAILED
    Installing golang.org/x/tools/cmd/guru FAILED
    Installing golang.org/x/tools/cmd/gorename FAILED
    Installing github.com/stamblerre/gocode FAILED
    Installing github.com/ianthehat/godef FAILED
    Installing github.com/sqs/goreturns FAILED
    Installing golang.org/x/lint/golint FAILED
    
    9 tools failed to install.
    

    手动使用go get -v github.com/mdempsky/gocode等命令同样提示网络连接失败。

    失败原因

    原因其实很简单:golang.org 在国内由于一些众所周知的原因无法直接访问,而go get在获取gocodego-defgolint等插件依赖工具的源码时,需要从 golang.org 上拉取部分代码至GOPATH,自然就导致了最后这些依赖于 golang.org 代码的依赖工具安装失败。

    解决办法

    解决也并不复杂:先通过git clone命令手动将依赖工具的源码拉取至GOPATH的对应路径,再通过go install命令安装依赖工具。

    Windows 为例,首先进入%GOPATH%src目录,并创建golang.orgx

    之后进入%GOPATH%srcgolang.orgx,使用下列命令下载插件依赖工具的源码:

    git clone https://github.com/golang/tools.git tools
    

    git clone命令执行完毕后,所需的工具源码就都保存在tools目录中。

    最后进入%GOPATH%目录,根据之前的安装失败提示信息安装对应的依赖工具:

    go install github.com/mdempsky/gocode
    go install github.com/ramya-rao-a/go-outline
    go install github.com/acroca/go-symbols
    go install golang.org/x/tools/cmd/guru
    go install golang.org/x/tools/cmd/gorename
    go install github.com/stamblerre/gocode
    go install github.com/ianthehat/godef
    go install github.com/sqs/goreturns
    go install golang.org/x/lint/golint
    

    安装 golint

    在执行go install命令安装 golint 时,提示信息如下:

    PS C:Usersabel1go> go install golang.org/x/lint/golint
    
    can't load package: package golang.org/x/lint/golint: cannot find package "golang.org/x/lint/golint" in any of:
            C:Gosrcgolang.orgxlintgolint (from $GOROOT)
            C:Usersabel1gosrcgolang.orgxlintgolint (from $GOPATH)
    

    这是因为 golint 的源码在lint下,而不是tools,需要单独拉取 golint 源码。

    进入%GOPATH%srcgolang.orgx,执行下列命令拉取 golint 源码:

    git clone https://github.com/golang/lint
    

    最后回到%GOPATH%,通过go install安装 golint:

    go install github.com/golang/x/lint/golint
    

    重启 VS Code 后,插件就可以正常使用了。Let's go for Go!

    参考文章

    1. 解决 VS Code 中 golang.org 被墙导致的 Go 插件安装失败问题 | 苏易北
    2. 解决vscode中golang插件依赖安装失败问题 | 简书
    3. VSCode安装go语言开发环境,go插件问题解决 | CSDN


    作者:苏易北
    链接:https://www.jianshu.com/p/37f1d9265fd0
    来源:简书
  • 相关阅读:
    手机网络制式常识
    合并两个有序数组a和b到c
    N皇后问题
    数独求解
    ARM处理器模式
    ARM异常中断处理
    国风·召南·野有死麕
    八大排序算法
    1045 Favorite Color Stripe (最长不下降子序列 LIS 或最长公共子序列 LCS)
    1066 Root of AVL Tree (模拟AVL建树)
  • 原文地址:https://www.cnblogs.com/alice-cj/p/11264261.html
Copyright © 2011-2022 走看看