微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

组织多文件Go项目

如何解决组织多文件Go项目

我建议阅读有关如何编写Go代码的页面

它记录了如何以gobuild友好的方式构建项目以及如何编写测试。使用该main程序包不必进行cmd测试。它们可以简单地被TestX命名为每个程序包的一部分,然后gotest发现它们。

现在,随着Go1的发布,问题中该链接中建议的结构有些过时了,您不再需要在pkg目录下放置目录src。仅有3个与规范相关的目录是GOPATH根目录中的3个目录:bin,pkg,src。在src之下,您可以简单地放置您的项目mypack,并且在其下是所有.go文件包括mypack_test.go

go build 然后将其构建到根级别pkg和bin中。

因此,您的GOPATH可能如下所示:

~/projects/
    bin/
    pkg/
    src/
      mypack/
        foo.go
        bar.go
        mypack_test.go

export GOPATH=$HOME/projects

$ go build mypack
$ go test mypack

更新:从> = Go1.11开始,模块系统现在已成为工具的标准部分,并且GOPATH概念已接近过时。

解决方法

在开发过程中组织Go项目的标准方法是什么?

我的项目是一个包mypack,所以我想我将所有.go文件放在一个mypack目录中。

但是,然后,我想在开发过程中对其进行测试,因此至少需要一个声明该main包的文件,以便我可以go run trypack.go

我应该如何组织呢?go install mypack每次尝试都需要做吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。