ホームページ >バックエンド開発 >Golang >Go ライブラリとバイナリに同じ名前を付けることはできますか?

Go ライブラリとバイナリに同じ名前を付けることはできますか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-01 17:41:13502ブラウズ

Can I Give My Go Library and Binary the Same Name?

同じ名前でライブラリとバイナリを作成できますか?

クエリ:

ライブラリとバイナリは作成されていますバイナリを独立して使用できるようにすることを目的として構築されました。ただし、これを達成しようとすると、意図したものとは異なる名前のコマンドが作成されるため、発見された回避策は最適とは思えません。より適切なアプローチはありますか?

応答:

ライブラリとバイナリを共存させるための最適化されたディレクトリ構造:

推奨アプローチは、ディレクトリを次のように構造化することです:

src/
    tar/
        tar.go         # Tar library
        tar/
            main.go    # Tar binary

この構成tar という名前のバイナリと tar という名前のライブラリが生成されます。

GitHub リポジトリの考慮事項:

GitHub などのプラットフォームでライブラリとバイナリをホストする場合、次のディレクトリ構造になります。

src/
    github.com/
        you/
            tar/
                tar.go         # Tar library
                tar/
                    main.go    # Tar binary

この配置により、バイナリ tar が生成されます。 go get install github.com/you/tar/tar の実行と、 go get install github.com/you/tar の実行時のライブラリ github.com/you/tar。

代替配置:

ライブラリとバイナリの位置は、次の条件に応じて逆転できます。 priority:

src/
    github.com/
        you/
            tar/
                main.go            # Tar binary
                tar/
                    tar.go         # Tar library

この代替構造により、ルート ディレクトリから go install ./... などのコマンドを簡単に実行して、パッケージやサブパッケージをビルドできます。

以上がGo ライブラリとバイナリに同じ名前を付けることはできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。