首页 > 后端开发 > Golang > 如何同时构建同名的 Go 库和独立可执行文件?

如何同时构建同名的 Go 库和独立可执行文件?

Linda Hamilton
发布: 2024-12-01 16:42:15
原创
143 人浏览过

How Can I Build Both a Go Library and a Standalone Executable with the Same Name?

管理库和二进制文件中的共享名称

开发软件时,可能需要同时拥有一个库和一个独立的可执行文件同名。这可能会在 Go 中带来挑战,因为推荐的方法是让可执行文件和库具有不同的名称。

在提供的示例中,开发人员正在尝试为 Tar 操作创建一个库,但也想要一个独立的库Tar 命令行实用程序。将可执行代码放置在库包内名为 main.go 的目录中的初始方法无法按预期工作。

要解决此问题,建议按如下方式组织代码库:

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

使用这个结构, go build -o $GOPATH/bin/tar tarbin 会构造一个名为 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 时,安装名为 tar 的二进制文件,并且 go get install github.com/you/tar 安装名为 github.com/you/tar 的库。

根据代码库的主要用途,可以在目录中交换库和二进制文件

通过在包目录中为库和二进制文件使用单独的子目录,开发人员可以有效地管理 Go 中具有共享名称的代码,从而启用库和独立可执行功能。

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

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