我正在研究Go中的一个项目,它需要几个外部库,比如MySQL驱动程序,图像处理库等。现在,我将$GOPATH
设置为/ usr / lib / go / src,它将任何下载的软件包放在/ usr / lib / go / src / src中,这显然似乎不对。如果我将$GOPATH
设置为/ usr / lib / go,则会收到错误消息,指出$GOPATH
无法设置为与$GOROOT
相同的目录。那么我应该将GOPATH=/path/to/my/project/lib
放在我的build.sh中,当我提交我的git repo时,将lib /放入我的.gitignore中吗?
我意识到这可能是一个愚蠢的问题。它现在工作正常,我只是想知道这是不好的做法。
答案 0 :(得分:8)
$ GOPATH可以是您选择的任何位置(除了少数例外),只要编译器知道在哪里找到它。如果您更改它,请确保使用
更新路径 export GOPATH=/path/to/gopath
我个人的偏好是将$ GOPATH与我的代码分开,除非我正在编写一个旨在通过go get <repo path>
导入的包,在这种情况下我将编写代码
$GOPATH/src/<repo path>
这是使用go get <repo path>