ホームページ > バックエンド開発 > Golang > ローカル Go モジュールを公開せずにインポートするにはどうすればよいですか?

ローカル Go モジュールを公開せずにインポートするにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-19 00:59:11
オリジナル
747 人が閲覧しました

How Can I Import a Local Go Module Without Publishing It?

公開せずにローカル Go モジュールをインポートする

質問:

Go プロジェクトでは、モジュールを GitHub などに公開せずに GOPATH の外にインポートしたい場合。ただし、「パス [モジュール名] のモジュールが見つかりません」というエラーが発生します。 「go mod init [モジュール名]」でモジュールを初期化しても、モジュールにはアクセスできないままです。

回答:

ローカル Go モジュールを公開せずにインポートするには:

置換ディレクティブを一緒に使用しますRequire

  1. メイン モジュールの go.mod ファイルに、次の行を追加します。
require "module-name" v0.0.0
replace "module-name" v0.0.0 => "{local path to the module}"
ログイン後にコピー
  1. Replace {local path to the module} は、ローカルのルート ディレクトリへの絶対パスまたは相対パスで置き換えます。 module.

説明:

Go のモジュール システムは、指定されたパスからモジュールを取得します。 replace ディレクティブを使用すると、予想されるパスをオーバーライドし、それがローカル モジュールを指すようになります。これにより、モジュールを公開せずにインポートできます。

モジュールからパッケージをインポートするには:

ローカル モジュールから util などのパッケージをインポートするには:

import "module-name/util"
ログイン後にコピー

詳細:

Go モジュール通常はパブリック パスに対応する一意の識別子が必要です。ただし、replace ディレクティブを使用すると、カスタム パスを使用できます。この方法は、公開されているモジュールに依存する代わりに、公開を目的としていないローカル モジュールで作業するのに役立ちます。

詳細については、Go モジュールのドキュメントを参照してください。

  • [ VCS の外部で完全にローカル ファイルシステム上で作業できますか?](https://go.dev/doc/modules/faq#local)
  • [いつreplace ディレクティブを使用する必要がありますか?](https://go.dev/doc/modules/replace)

以上がローカル Go モジュールを公開せずにインポートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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