我使用go1.3.1.windows-amd64.msi安装了go语言,安装完成后GOROOT自动设置为默认值,我将D:\Programs\Go\bin添加到了PATH环境变量中,并创建了GOPATH环境变量。使用'go get'命令时出现错误:
包github.com/coreos/etcd: 无法下载,$GOPATH不能设置为$GOROOT。更多详细信息见:go help gopath
操作系统:windows 7
GOPATH和GOROOT会冲突吗?
如何设置这两个PATH值?
GOROOT
必须指向安装 GO 的文件夹GOPATH
必须指向一个空文件夹,它将是你的工作区 (src/pkg/bin 用于你的项目)在用户环境变量中添加这两个变量。
go get github.com/coreos/etcd
应该:
%GOPATH%/src/github.com/coreos/etcd
(src
已经为你创建)%GOPATH%/pkg/windows_amd64
(pkg/
也已经为你创建,windows_amd64
反映了你的Windows架构)go install
命令,将其安装到 %GOPATH%/bin
中(bin/
也已经为你创建)注意:从 Go 1.8+(2017年第二季度),GOPATH
可能会默认设置(在 Windows 上)为 %USERPROFILE%/go
。
在 Linux 上,它可能是 $HOME/go
:参见 issue 17262。
2018 年更新,三年后: GOPATH
在 Go 1.11 模块 中将被淘汰:
mkdir newProject
cd newProject
set GO111MODULE=on
go mod init myproject
我遇到了同样的问题。不过按照教程中所说的设置了一切,但忘记重新启动 cmd
。因此,操作步骤如下:
Go
分发版(GOROOT
变量会自动设置)bin
、src
和 pkg
->
所有控制面板项目 ->
系统 ->
高级系统设置 ->
高级选项卡 ->
环境变量 ->
通过单击 系统变量 上的 新建 添加新的系统变量 GOPATH
。变量名称 = GOPATH
,变量值 = 你创建的目录的路径
cmd
或 Bash
(这很重要),就可以设置你的 GOPATH
。为确保正确,运行 go env
命令即可查看其值。不应设置$GOROOT
。
输入export GOROOT=""
来解决问题。
只需执行 set GOPATH=[路径]
即可完成您的工作。