ホームページ >バックエンド開発 >Golang >Go モジュール内のローカル パッケージにアクセスするにはどうすればよいですか?

Go モジュール内のローカル パッケージにアクセスするにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-22 05:04:13648ブラウズ

How Do I Access Local Packages Within a Go Module?

Go モジュール内のローカル パッケージへのアクセス

質問:

Go モジュール内のローカル パッケージにアクセスできません。プロジェクトの構造は次のとおりです:

/
  - /platform
      - platform.go
  - main.go
  - go.mod

main.go にプラットフォーム パッケージをインポートすると、エラーが発生します: パス プラットフォームのモジュールが見つかりません。

答え:

Go モジュールのローカル パッケージにアクセスするには、go.mod ファイルの replace ディレクティブを使用できます。このディレクティブを使用すると、リモートで公開されていないモジュールへのローカル パスを指定できます。

メイン モジュールの go.mod ファイルに、次の行を追加します。

module github.com/userName/mainModule

require "github.com/userName/otherModule" v0.0.0
replace "github.com/userName/otherModule" v0.0.0 => "local physical path to the otherModule"

指定されたパスモジュールのルート ディレクトリを指す必要があり、絶対または相対にすることができます。

main.go で、otherModule からプラットフォームなどの特定のパッケージをインポートします。モジュールの場合は、次のインポート パスを使用します:

import "github.com/userName/otherModule/platform"

追加情報:

  • Go のモジュールはパッケージのコレクションです。 Go 11 では、モジュールをリモートで公開せずに使用できます。
  • パッケージが同じプロジェクト内にある場合は、パッケージ名を使用して直接インポートできます。
  • 個別のモジュールの場合は、replace ディレクティブは、リモートで公開せずにローカル パッケージを参照するために使用されます。

詳細については、次のリソースを参照してください。詳細:

  • [Golang モジュール](https://go.dev/blog/modules)

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

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