Go语言工程目录

Go语言工程目录教程

Go 语言 工作区的目录主要分为 src 目录、pkg 目录 以及 bin 目录。

Go语言工作区

一般情况下,Go 语言的源码文件必须放在工作区中。但是对于命令源码文件来说,这不是必需的。工作区其实就是一个对应于特定工程的目录,它应包含 3 个子目录:src 目录、pkg 目录和 bin 目录。

src目录

用于以代码包的形式组织并保存 Go 源码文件,这里的代码包与 src 下的子目录一一对应。例如,若一个源码文件被声明属于代码包 log,那么它就应当保存在 src/log 目录中。

当然,也可以把 Go 源码文件直接放在 src 目录下,但这样的 Go 源码文件就只能被声明属于 main 代码包了。除非用于临时测试或演示,一般还是建议把 Go 源码文件放入特定的代码包中。

pkg目录

用于存放通过 go install 命令安装后的代码包的归档文件。前提是代码包中必须包含 Go 库源码文件。归档文件是指那些名称以 .a 结尾的文件。该目录与 GOROOT 目录下的 pkg 目录功能类似。区别在于,工作区中的 pkg 目录专门用来存放用户代码的归档文件。

编译和安装用户代码的过程一般会以代码包为单位进行。比如 log 包被编译安装后,将生成一个名为 log.a 的归档文件,并存放在当前工作区的 pkg 目录下的平台相关目录中。

bin目录

pkg 目录类似,在通过 go install 命令完成安装后,保存由 Go 命令源码文件生成的可执行文件。在类 Unix 操作系统下,这个可执行文件一般来说名称与源码文件的主文件名相同。而在 Windows 操作系统下,这个可执行文件的名称则是源码文件主文件名加 .exe 后缀。

Go语言工程目录总结

Go 语言工作区的目录主要分为 src 目录、pkg 目录以及 bin 目录。