ライブラリとバイナリでの共有名の管理
ソフトウェアを開発する場合、ライブラリとスタンドアロン実行可能ファイルの両方を用意することが望ましい場合があります。同じ名前。推奨されるアプローチは、実行可能ファイルとライブラリに別個の名前を付けることであるため、これは 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 サイトの他の関連記事を参照してください。