GOROOT、GOPATH、项目目录,之间关系
- GOROOT
- golangd 安装目录
- GOPATH
- 官方解释很模糊,可以google看看
- go get 安装插件存放的地方
- 项目目录
- project
- 这里面一般都是我们的项目代码
- 正常配置的时候,安装完golang之后,cmd执行go env看系统配置
- 1、GOROOT一般都不用重新配置,用系统默认的就可以
- 2、GOPATH,这个就和项目有点关系了。
很多项目设置结构
- project
- src
- 扩展1
- 扩展2
- 插件1
- 插件2
- 但是GO里不是这样,他的作用范围是GOPATH包含Project
目录结构:
- GOPATH
- SRC
- github
- pkg
- ....
- 项目1
- 项目2
- 项目3
- ……
从上面可以理解.gopaht其实就是指一个项目,当是一个gopath可以包含多个项目。
例如:GOPATH:D:\Project
我们执行安装插件命令
go get xxx
那么会在D:\Project产生一个src -> xxxx
- 这时候如果我们把项目1放到和src平级,那么就无法调用到。golang里有package,他不会去找到src下面的,只要平级的子级去寻找
所以:- src
- xxx1
- xxx2
- 项目1
- 项目2
- 这时候如果使用xxx1插件,会发现应用不到,或者其它问题。package not found等
- 所以,我们需要把项目移动到src里与go get安装在同一个目录里。
- 正常运行的目录结构:
- 项目1(GOPATH 目录)
- src(go get 插件目录)
- 安装的插件(文件夹)
- 项目源码(文件夹)
- 其它项目(文件夹)
IDE打开时候,也是指向到src目录里的项目源码目录即可。 GOPATH可以设置多个,用;分……