"Don't be Java Bro :-) "的框架通过轻描淡写一个有争议的问题,削弱了整个标准文档的可信度。

作者: AlexChesser创建于 2025年9月19日更新于 2026年6月5日

/src

一些 Go 项目确实有一个 /src 目录,但通常发生在开发人员来自 Java 世界的情况下,这是一个常见的模式。如果你能帮助自己,请不要采用这个 Java 模式。你真的不希望你的 Go 代码或 Go 项目看起来像 Java :-)

不要将项目级别的 /src 目录与 Go 使用的工作空间目录混淆,如 如何编写 Go 代码 中所述。$GOPATH 环境变量指向你的(当前)工作空间(默认情况下,它在非 Windows 系统上指向 $HOME/go)。此工作空间包括顶级 /pkg/bin/src 目录。你的实际项目最终会成为 /src 目录下的一个子目录,因此如果你的项目中有 /src 目录,项目路径将如下所示: /some/path/to/workspace/src/your_project/src/your_code.go。请注意,在 Go 1.11 中,你可以将项目放在 GOPATH 外部,但这并不意味着使用这种布局模式是一个好主意。

内容来源: golang-standards/project-layout