首页 > 后端开发 > Golang > 如何构建同名的 Go 库和二进制文件?

如何构建同名的 Go 库和二进制文件?

Mary-Kate Olsen
发布: 2024-11-29 09:45:11
原创
592 人浏览过

How Can I Build a Go Library and Binary with the Same Name?

具有相同名称的库和二进制文件

设计一个也可以用作独立二进制文件的库时,会出现一个常见的挑战。虽然将库和二进制文件命名为相同的名称似乎合乎逻辑,但 Golang 构建系统通常分配不同的名称。

一种解决方案是将目录结构分为库的 tar 目录和二进制文件的 tarbin 目录。但是,这种方法会创建一个名为 tarbin 的二进制文件,而不是 tar。

更优雅的解决方案是将二进制文件嵌套在库目录中:

src/
    tar/
        tar.go         # tar library
        tar/
            main.go    # tar binary
登录后复制

此结构会生成一个名为 tar 的二进制文件,并且一个名为 tar 的库。

在 GitHub 上下文中,目录结构变为:

src/
    github.com/
        you/
            tar/
                tar.go         # tar library
                tar/
                    main.go    # tar binary
登录后复制

此结构允许轻松安装二进制文件(go get install github.com/you/tar/tar)和库(go get install github.com/you/tar)。

根据所需的重要性,库和二进制文件可以在目录结构内交换。此外,将所有代码保存在单个树中可以方便地构建和测试:

go install ./...
go test|fmt ./...
登录后复制

以上是如何构建同名的 Go 库和二进制文件?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板