这不是这个问题的重复:
what should be the values of GOPATH and GOROOT?
我不想知道这些值应该是什么。我想知道当我在控制台中输入ls $GOROOT
或ls $GOPATH
时应该看到的内容。我很确定我在大约一年前的教程后设置错误了,我希望能够通过简单地检查它们指向正确的内容来确认这两个指向它们应该在哪里。
这就是我现在的位置。看起来$GOROOT
无处可指。我很确定它应该指向usr/local/go
,但要确认我是否知道ls $GOROOT
的预期结果应该更容易。
至于$GOPATH
我不完全确定我的“工作区”是我所有的代码是什么,或者只是github的东西,或者我正在工作的特定文件夹。我知道它应该指向我的“工作空间”,但我不知道我正在寻找的工作空间是什么样的。
Sephs-MBP:ThumbzArt seph$ $GOROOT
Sephs-MBP:ThumbzArt seph$ $GOPATH
-bash: /Users/seph/code/golang: is a directory
Sephs-MBP:ThumbzArt seph$ ls $GOROOT
Bman.jpg README.md ThumbzArt.sublime-workspacescripts thumbzart.go
LICENSE.md ThumbzArt.sublime-project public templates ticktock.go
Sephs-MBP:ThumbzArt seph$ $GOPATH
-bash: /Users/seph/code/golang: is a directory
Sephs-MBP:ThumbzArt seph$ ls $GOPATH
- bin p pkg src
Sephs-MBP:ThumbzArt seph$ ls /usr/local/go
AUTHORS CONTRIBUTORS PATENTS VERSION bin doc lib pkg src
CONTRIBUTING.md LICENSE README.md api blog favicon.ico misc robots.txt test
Sephs-MBP:ThumbzArt seph$
我知道这个问题似乎很荒谬,但很难确定你没有预期结果的事情。
谢谢
Sephs-MBP:streak seph$ go env
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/seph/code/golang"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GO15VENDOREXPERIMENT=""
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fno-common"
CXX="clang++"
CGO_ENABLED="1"
Sephs-MBP:streak seph$ go version
go version go1.5.2 darwin/amd64
Sephs-MBP:streak seph$ which go
/usr/local/go/bin/go
答案 0 :(得分:-5)
编辑:我偶然发现的另一个非常有用的功能是:go help gopath
。这可能是某些人的回答。
文件夹$GOPATH
指向的应该是这样的:
Sephs-MBP:streak seph$ ls $GOPATH
- bin p pkg src
另一方面,如果您使用$GOROOT
与ls $GOROOT
相比, ls $GOPATH
会产生意外结果。这是因为我认为$GOROOT
未设置在此上下文中。
Sephs-MBP:helloworld seph$ ls $GOROOT
helloworld.go
如果您使用go env
,您将会看到$GOROOT
Sephs-MBP:streak seph$ go env
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/seph/code/golang"
GORACE=""
GOROOT="/usr/local/go" //this is where it actually points
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GO15VENDOREXPERIMENT=""
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused- arguments -fmessage-length=0 -fno-common"
CXX="clang++"
CGO_ENABLED="1"
如果您从$GOROOT
得到go env
的结果并且ls
,您会看到类似的内容:
Sephs-MBP:streak seph$ ls /usr/local/go
AUTHORS CONTRIBUTORS PATENTS VERSION bin doc lib pkg src
CONTRIBUTING.md LICENSE README.md api blog favicon.ico misc robots.txt test
如果检查了所有这些内容,那么您的$GOPATH
和$GOROOT
已正确设置。