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

GOPATH を使用せずに Go にローカル パッケージをインポートするにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-18 16:27:12254ブラウズ

How Can I Import Local Packages in Go Without Using GOPATH?

GOPATH を使用しないローカル パッケージのインポート

GOPATH を使用しないローカル パッケージのインポートは、以下の手順に従って実行できます。

Go 依存関係管理概要:

続行する前に、推奨される Go 依存関係管理アプローチは、使用されている Go バージョンによって異なることに注意することが重要です:

  • Go バージョン 1.11 以降の場合は vgo
  • Go バージョン 1.6 ~ 1.10 の開発者またはベンダー
  • 手動アプローチGo バージョン 1.6 未満の場合

vgo (Go 1.11 以降):

  1. GO111MODULE 環境変数を "on" に設定します。
  2. 「go mod init」を実行して、 project.
  3. 「go modvendor」を実行します (vendor ディレクトリがある場合は自動的に統合されます)。
  4. 「go build」を使用してプロジェクトをビルドします。

ベンダー (Go 1.6 以降):

プロジェクト内の「vendor」ディレクトリを作成し、その中に依存パッケージを配置します。コンパイル時に、コンパイラーはベンダー ディレクトリからのパッケージを優先します。

見つかった: サブフォルダーを使用してローカル パッケージをインポート (GOPATH)

GOPATH とサブフォルダーを使用してローカル パッケージをインポートするには:

  1. インポートするパッケージのサブフォルダーを作成します (例: "package1").
  2. 次の構文を使用してパッケージをインポートします: 依存する Go スクリプトで "./package1" をインポートします (例: binary1.go、binary2.go)。

プロジェクト構造の例:

myproject/
├── binary1.go
├── binary2.go
├── package1/
│   └── package1.go
└── package2.go

追加注:

  • インポートには相対パスも使用できます (例: import "../packageX")。
  • 大規模なプロジェクトの場合は、使用することをお勧めします。自動化された依存関係の処理と分離を提供するため、依存関係管理には vgo、dep、またはベンダーを使用します。

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

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