ホームページ >バックエンド開発 >Golang >Go 1.11 の Go モジュールを使用して Google Cloud Functions をデプロイする方法: 依存関係の競合を解決する?

Go 1.11 の Go モジュールを使用して Google Cloud Functions をデプロイする方法: 依存関係の競合を解決する?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-31 01:09:29549ブラウズ

 How to Deploy Google Cloud Functions with Go Modules in Go 1.11: Resolving Dependency Conflicts?

Go 1.11 の Go モジュールを使用した Google Cloud Functions のデプロイ

Go モジュールは、Go プロジェクトの依存関係管理に対する最新のアプローチを提供します。ただし、Go モジュールを使用して Go 1.11 で Google Cloud Functions をデプロイする場合、特定の課題が発生します。

課題: 互換性のないモジュールの解決

Function Builder は、ベンダーの依存関係よりもモジュールを優先します。ただし、親ディレクトリ内のモジュールを参照する関数をデプロイする場合 (置換ディレクティブを使用するなど)、関数の隔離された環境内でモジュールが見つからないため、ビルダーは失敗します。

解決策:モジュールのベンダー化と除外

この問題を解決するには、モジュールを使用する代わりに依存関係をベンダー化することをお勧めします。さらに、go.mod ファイルと go.sum ファイルは、展開プロセス中に除外する必要があります。

これは、Google のドキュメントで説明されているように、関数のディレクトリ内に .gcloudignore ファイルを作成することで実現できます。

.gcloudignore
go.mod
go.sum

これらのファイルを無視すると、Function Builder はそれらのファイルを展開パッケージから除外し、モジュールの代わりにベンダーの依存関係が使用されるようにします。

注: modvendor」および「go mod verify」コマンドは、デプロイメントの前にローカルで正常に完了し、すべての依存関係が正しくベンダー化されていることを確認します。

以上がGo 1.11 の Go モジュールを使用して Google Cloud Functions をデプロイする方法: 依存関係の競合を解決する?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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