ホームページ > バックエンド開発 > Golang > Go ライブラリとスタンドアロン実行可能ファイルの両方を同じ名前でビルドするにはどうすればよいですか?

Go ライブラリとスタンドアロン実行可能ファイルの両方を同じ名前でビルドするにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-01 16:42:15
オリジナル
190 人が閲覧しました

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 という名前のバイナリがインストールされ、 get install github.com/you/tar という名前のライブラリがインストールされます。 github.com/you/tar.

コードベースの主な目的に応じて、ライブラリとバイナリはディレクトリ構造内で交換できます。

ライブラリとバイナリに別々のサブディレクトリを使用することにより、パッケージ ディレクトリ内で、開発者は Go で共有名を持つコードを効果的に管理でき、ライブラリとスタンドアロンの実行可能ファイルの両方の機能が有効になります。

以上がGo ライブラリとスタンドアロン実行可能ファイルの両方を同じ名前でビルドするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート