首页 > 解决方案 > 无法下载 Go with Visual Studio 所需的分析工具

问题描述

我是一个完全的新手,刚刚开始了 Go 的初学者课程,并且在安装所有需要使它工作的位的第一个障碍时失败,如果这是一个愚蠢的问题,我很抱歉。我已经安装了 Go、Git 和 Visual Studio……在第一次安装 Visual Studio 之后,我试图为 Go 安装 12 个分析工具,但每次我尝试它都会失败。通常与“权限被拒绝”错误有关。下面的错误信息。任何想法为什么?

在 /Documents/go/bin 安装 12 个工具 gocode gopkgs
go-outline go-symbols guru gorename dlv gocode-gomod godef godef-gomod goreturns golint

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

12 个工具安装失败。

gocode:错误:命令失败:/usr/local/go/bin/go get -u -v github.com/mdempsky/gocode github.com/mdempsky/gocode(下载)包github.com/mdempsky/gocode:mkdir / Documents/go: 权限被拒绝 github.com/mdempsky/gocode (下载) 包 github.com/mdempsky/gocode: mkdir /Documents/go: 权限被拒绝

gopkgs:错误:命令失败:/usr/local/go/bin/go get -u -v github.com/uudashr/gopkgs/cmd/gopkgs github.com/uudashr/gopkgs(下载)包 github.com/uudashr/ gopkgs/cmd/gopkgs: mkdir /Documents/go: 权限被拒绝 github.com/uudashr/gopkgs (下载) 包 github.com/uudashr/gopkgs/cmd/gopkgs: mkdir /Documents/go: 权限被拒绝

标签: govisual-studio-code

解决方案


我不使用 golang 的 Visual Studio,所以如果它是特定于 Visual Studio 的,这里的用途可能有限 - 但我只听说过好东西,所以它可能不是......

我怀疑问题是您的 GOPATH 设置为,/Documents/go而您已将 GOPATH 放置在用户的 Documents 文件夹中。它可能应该是类似的东西%My Documents%/go或到该位置的完整路径,例如类似的东西/c/Users/{your user}/Documents

注意:我使用了 nix 风格的路径——就像你的输出一样,但是当通过 windows gui 设置它们时,你应该使用 windows 约定,例如C:\Users\...

为了进一步诊断,我将首先从等式中删除 ide 并跳转到命令行。

键入go env以检查您的路径,特别是查看我怀疑是您的问题的 GOPATH 。如果不正确,您应该在环境变量中更改它(谷歌为您的 windows 版本更改环境变量) - 按照上面的说明,遵循其他环境变量的约定来设置路径(windows 样式规范,e.g c:\Users\

如果go env不起作用,您的 go install 有更大的问题

如果您仍然遇到问题,请更新您的问题,提供输出go env以及您如何安装 go 的概述(注意:我认为 MSI 安装程序会为您解决所有问题)

如果你觉得 go env 看起来不错,另一个调试步骤是尝试从命令行手动安装你的一个工具,看看会发生什么,例如:

go get -u -v github.com/mdempsky/gocode

但是如果 go env 也不起作用,那么问题很可能是您的主要 go 二进制文件不在您的系统PATH环境变量中,但它看起来不像那样


推荐阅读