Go的工程项目管理非常简单,使用目录结构和包名来确定工程结构和构建顺序。
环境变量GOPATH在项目管理中非常重要,想要构建一个项目,必须确保项目目录在GOPATH中。而GOPATH可以有多个项目用";"分隔。
Go 项目目录下一般有三个子目录:
- src存放源代码
- pkg编译后生成的文件
- bin编译后生成的可执行文件
我们重点要关注的其实就是src文件夹中的目录结构。
为了进行一个项目,我们会在GOPATH目录下的src目录中,新建立一个项目的主要目录,比如我写的一个Web项目《使用Gin快速搭建Web站点以及提供RESTFul接口》。 https://github.com/ffhelicopter/tmm 项目主要目录“tmm”: GOPATH/src/github.com/ffhelicopter/tmm 在这个目录(tmm)下面还有其他目录,分别放置了其他代码,大概结构如下:
src/github.com/ffhelicopter/tmm
/api
/handler
/model
/task
/website
main.go
main.go 文件中定义了package main 。同时也在文件中import了
"github.com/ffhelicopter/tmm/api"
"github.com/ffhelicopter/tmm/handler"
2个自定义包。
上面的目录结构是一般项目的目录结构,基本上可以满足单个项目开发的需要。如果需要构建多个项目,可按照类似的结构,分别建立不同项目目录。
当我们运行go install main.go 会在GOPATH的bin 目录中生成可执行文件。