Go モジュール - 「バージョンのない置換モジュールはディレクトリ パスでなければならない」エラーについて理解
Go モジュールを使用する場合、replace ディレクティブを使用すると、ローカル パッケージの依存関係をオーバーライドします。ただし、ユーザーは「バージョンのない置換モジュールはディレクトリ パスでなければなりません」というエラーに遭遇することがよくあります。これを解決するには、replace ディレクティブの正しいパス構造を理解する必要があります。
Replace ディレクティブのパス構造
replace ディレクティブに指定されたパスは、以下に従う必要があります。特定の要件。
例: Replace ディレクティブに相対パスを使用する
があるとします。次のようなプロジェクト構造:
my-project/ go.mod src/ my-app/ main.go my-pack/ pack.go
my-app モジュール内で my-pack パッケージをローカルに使用するには、次のように go.mod を変更します:
module my-app go 1.12 require my-pack v0.0.0 replace my-pack => ../my-pack
ここで、相対パス ../my-pack は、my-pack パッケージを指します。これは、my-app パッケージの 1 レベル上の兄弟にあたります。
追加の考慮事項
これらのガイドラインに従うことで、replace ディレクティブを効果的に使用して依存関係をオーバーライドできます。 Go モジュールを使用する場合はローカル パッケージを使用します。
以上がGo モジュール: 「バージョンのない置換モジュールはディレクトリ パスである必要があります」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。