zoukankan      html  css  js  c++  java
  • vscode 安装go第三方扩展包填坑记录

    1、vscode中安装go扩展包,不再阐述。

    2、在安装好go的扩展包以后,创建GOPATH环境变量

    3、PATH中会自动添加,如果没有可手动添加

    4、在GOPATH目录下创建自己的工作空间(为什么一定是在GOPATH下创建,还不太清楚),我的是workspace(名称可以自定义)

    5、打开VSCODE,文件-打开文件夹,选择GOPATH目录

    6、在workspace下创建helloworld目录(我称为项目空间)

    7、配置VSCODE中的setting.json文件

    加入如下配置:

    8、编写helloworld代码如下,可直接复制

    package main

    import "fmt"

    func main() {

        fmt.Println("Hello world!")

    }

    保存,重启VSCODE

    9、重启VSCODE后,会自动加载GO的第三方类库,注意输出,因为有FQ的限制,基本上无法从golang.org上下载对应的类包。每个人的情况不一样,我的基本上都是安装失败,如下:

    Installing github.com/mdempsky/gocode FAILED
    Installing github.com/uudashr/gopkgs/cmd/gopkgs 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/go-delve/delve/cmd/dlv SUCCEEDED
    Installing github.com/stamblerre/gocode FAILED
    Installing github.com/rogpeppe/godef SUCCEEDED
    Installing github.com/sqs/goreturns FAILED
    Installing golang.org/x/lint/golint FAILED

    10、vscode自动安装失败,执行手动安装
    第一步先在%GOPATH%srcgolang.orgx目录下打开git bash(如果没有对应的golang.org目录,可手功创建),执行git clone http://github.com/golang/tools。(手动安装第三方类包时,必须先安装tools类包)必须用git来clone,否则安装其他组件如go get -u -v github.com/cweill/gotests。会出现package golang.org/x/tools/imports:directory"D:\GoPath\src\golang.org\x\tools\imports" is not using a known version control system错误。
    第二步tools下载好后,进入%GOPATH%srcgolang.orgx oolscmdgorename目录,按shift+右键选择在此打开命令窗口,执行go install,guru也执行同样操作。
    第三步在命令行窗口执行go get -u -v github.com/newhook/go-symbols,安装go-symbols。其他几个同样执行此操作,包链接见下。

    先在%GOPATH%/src/github.com下执行:

    git clone https://github.com/mdempsky/gocode
    git clone https://github.com/uudashr/gopkgs/cmd/gopkgs
    git clone https://github.com/ramya-rao-a/go-outline
    git clone https://github.com/acroca/go-symbols
    git clone https://golang.org/x/tools/cmd/guru
    git clone https://golang.org/x/tools/cmd/gorename
    git clone https://github.com/go-delve/delve/cmd/dlv
    git clone https://github.com/stamblerre/gocode
    git clone https://github.com/rogpeppe/godef
    git clone https://github.com/sqs/goreturns
    git clone https://golang.org/x/lint/golint

    之后在%GOPATH%下执行
    go install github.com/mdempsky/gocode
    go install github.com/uudashr/gopkgs/cmd/gopkgs
    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/go-delve/delve/cmd/dlv
    go install github.com/stamblerre/gocode
    go install github.com/rogpeppe/godef
    go install github.com/sqs/goreturns
    go install golang.org/x/lint/golint

    示例:

    在从github.com下载时,有时会发现目录的问题,比如下载github.com/mdempsky/gocode,在下载完成后,会在%GOPATH%/src/github.com目录下生成gocode目录(或者生成mdempsky(空的)与gocode目录),这时需要手工将gocode移至mdempsky目录下。

    如果出现package golang.org/x/tools/go/buildutil: cannot download,http://github.com/golang/tools uses insecure protocol错误,不难看出是下载tools导致,由于我们上边已经安装tools而且此时goo-symbols已经通过go get下来,此时我们直接进入%GOPATH%srcgithub.com ewhookgo-symbols目录,进入命令行执行go install,安装成功go-symbols.exe已出现在%GOPATH%in目录。

    11、如果在打开VSCODE时(默认GO项目工程),提示

    则可按以上方法进行安装。

    12、安装完vscode时需要安装的插件,后面的名称是在%GOPATH%/bin下生成的exe文件

    github.com/mdempsky/gocode          gocode
    github.com/uudashr/gopkgs/cmd/gopkgs    gopkgs
    github.com/ramya-rao-a/go-outline      go-outline
    github.com/acroca/go-symbols          go-symbols
    golang.org/x/tools/cmd/guru          guru
    golang.org/x/tools/cmd/gorename      gorename
    github.com/derekparker/delve/cmd/dlv       dlv
    github.com/stamblerre/gocode          gocode-gomod
    github.com/rogpeppe/godef        godef
    github.com/ianthehat/godef          godef-gomod
    github.com/sqs/goreturns          goreturns
    golang.org/x/lint/golint          golint

    也可生成一个批处理文件

    mkdir  %GOPATH%\src\golang.org\x
    git clone https://github.com/golang/tools.git %GOPATH%\src\golang.org\x\tools

    go get -v github.com/mdempsky/gocode
    go get -v github.com/uudashr/gopkgs/cmd/gopkgs
    go get -v github.com/ramya-rao-a/go-outline
    go get -v github.com/acroca/go-symbols
    go get -v golang.org/x/tools/cmd/guru
    go get -v golang.org/x/tools/cmd/gorename
    go get -v github.com/derekparker/delve/cmd/dlv
    go get -v github.com/stamblerre/gocode
    go get -v github.com/rogpeppe/godef
    go get -v github.com/ianthehat/godef
    go get -v github.com/sqs/goreturns
    go get -v github.com/golang/lint%
    git clone https://github.com/golang/lint.git %GOPATH%\src\golang.org\x\lint

    go build -o %GOPATH%\bin\gocode.exe github.com/mdempsky/gocode
    go build -o %GOPATH%\bin\gopkgs.exe github.com/uudashr/gopkgs/cmd/gopkgs
    go build -o %GOPATH%\bin\go-outline.exe github.com/ramya-rao-a/go-outline
    go build -o %GOPATH%\bin\go-symbols.exe github.com/acroca/go-symbols
    go build -o %GOPATH%\bin\guru.exe golang.org/x/tools/cmd/guru
    go build -o %GOPATH%\bin\gorename.exe golang.org/x/tools/cmd/gorename
    go build -o %GOPATH%\bin\dlv.exe github.com/derekparker/delve/cmd/dlv
    go build -o %GOPATH%\bin\gocode-gomod.exe github.com/stamblerre/gocode
    go build -o %GOPATH%\bin\godef.exe github.com/rogpeppe/godef
    go build -o %GOPATH%\bin\godef-gomod.exe github.com/ianthehat/godef
    go build -o %GOPATH%\bin\goreturns.exe github.com/sqs/goreturns
    go build -o %GOPATH%\bin\golint.exe golang.org/x/lint/golint

    pause
     

    注意事项:

    1)、会发现有两个gocode ,github.com/mdempsky/gocode 与 github.com/stamblerre/gocode,所在使用go install安装时,只会生成名称是gocode.exe文件,所以在这使用了 go build -o 的命令与参数。

    2)、在安装好github.com/golang/tools后,golang.org/x/tools/cmd/guru 与 golang.org/x/tools/cmd/gorename,可直接进入对应的目录下,执行 【go install】 安装即可。

    附:所有第三方类包安装完的效果:

     
    ————————————————
    版权声明:本文为CSDN博主「风子杨yxf771」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/yxf771hotmail/article/details/88233857

  • 相关阅读:
    LibSVM文本分类之工程中调用LibSVM进行文本分类
    交叉验证–Cross validation
    SkySeraph博主的GLCM特征学习
    Libsvm分类步骤
    VC技巧
    转载 libsvm vc 移植 实现多类分类
    FANN学习2之建立简单工程
    开源库FANN学习笔记1
    忙了一上午终于把形状特征搞定了啊
    终于看到结果了
  • 原文地址:https://www.cnblogs.com/1124li/p/12678681.html
Copyright © 2011-2022 走看看