go - 无法下载 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: 权限被拒绝
解决方案
我不使用 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
环境变量中,但它看起来不像那样
推荐阅读
- c++ - 为什么在定义自定义点对象时需要删除函数?
- node.js - 与 Express 中的重定向路由异步
- javascript - 如何使用 IF 条件更改 for 循环中的列值
- html - 内容溢出容器并在屏幕缩小时重叠页脚
- postgresql - PostgreSQL 未用于我们数据库的表,查询问题?
- git - 将 repo 移动到新的分支/repo
- r - 是否可以在 R 中仅显示带有 ggplot 的特定刻度线?
- python - 使用 Ironclad 在 Iron Python 中实现 Opencv
- python - 从 GitHub (urllib.request) 下载 csv 文件时出错
- linux - x86 中的分段与 linux 下编译器中的分段