ホームページ >バックエンド開発 >Golang >Go 言語の依存関係管理の概要

Go 言語の依存関係管理の概要

尚
転載
2020-02-14 16:06:243237ブラウズ

Go 言語は、シンプルで信頼性が高く効率的なソフトウェアを簡単に構築できるオープンソース プログラミング言語です。 go 言語チュートリアル コラムでは、go 言語の依存関係管理について紹介します。

Go 言語の依存関係管理の概要go mod 手順

Go 言語の依存関係管理の概要

必要に応じて依存関係を追加します。サードパーティのフレームワークの場合は、まず github でその URL アドレスを確認します。たとえば、gin フレームワークは github.com/gin-gonic/gin

です。最初にモジュール モード、つまり SET GO111MODULE をオンにします。 = オン。デフォルトは自動です (間違いを避けるため、常に現在のプロジェクト ディレクトリでコマンドを実行するように注意してください)

SET GOPROXY=https://goproxy.cn プロキシを国内に設定します。それ以外の場合は、プロキシを国内に設定します。ダウンロードは機能しません。 env -w GOPROXY=https://goproxy.cn,direct を追加します (goland では、設定から直接変更できます。このコマンドを毎回実行する必要はありません。オンにする場合も同様です)

go mod init コマンドを使用して、現在のプロジェクトの go.mod ファイルを生成します。

必要なフレームワークがローカル (GOPATH の下) に存在しない場合は、

を実行します。 go get -u github.com/gin-gonic/gin

で完了です。フレームワークの 3 つのコピーがあり、src と同じレベルの pkg、GOPATH、および外部ライブラリに配置されます (実際には存在しない場合、goland はこのディレクトリを仮想化します。これには、現在のプロジェクトのモジュール ディレクトリと GOROOT 下の src ディレクトリ、つまり SDK ディレクトリが含まれます。エディタは、外部ライブラリの下のパッケージを通じてコードを識別します。もちろん、次のようにすることもできます。

go mod download も使用しますが、これにはパラメーターがないようです。成功するには、最初に go.mod ファイルにフレームワークを追加する必要があるため、引き続き前のフレームワークを使用します 必要なフレームワークがすでにローカルに存在する場合は、 go install github.com/gin-gonic/gin

を実行するか、go.mod ファイル内で

github.com/gin-gonic/gin を追加します。 require (ファイルを直接変更することはできないようです。go mod edit を使用する必要があります)、またはプログラム gin で import github.com/gin-gonic/ を実行します。その後、go を実行します。 mod tiny依存関係の削除

このフレームワークが不要になった場合は、関連するコードがない場合は go mod tiny

を実行します。プログラム内のフレームワークに追加すると、この命令により

go.mod ファイル内のフレームワークが自動的に削除されます この時点で、外部ライブラリ ディレクトリ内のフレームワークが削除され、残りの 2 つのフレームワークが削除されます。その結果、エディタはフレームを認識できないため、コード プロンプトを表示できず、フレームに関連するコードのエラーが報告されます。

#その他の指示

go modvendor は、現在のプロジェクトのすべての依存関係をプロジェクト配下のベンダー ディレクトリにパッケージ化するために使用されます (このディレクトリはこのコマンドによって作成され、自分で新しいフォルダーを作成することは無効です)。その依存関係は、別のコンピュータに簡単にコピーできます。

さらに、goland 2019 バージョン 3.0 以降では、クリップボードに github.com/gin-gonic/gin などが検出されると、インストールするかどうかを尋ねるポップアップ ウィンドウが自動的に生成されます。モジュール モードを設定し、プロキシを変更した後、ポップアップ ウィンドウのオプションを直接クリックして操作できます。

現在、vscode はモジュール モードを十分にサポートしていません。 (外部フレームワークのコードプロンプトが表示されない、または利用できない場合があります。パッケージを自動的にインポートすることができません)、エラー表示の遅延が深刻すぎます。

go 言語の知識について詳しくは、php 中国語 Web サイトの

go 言語チュートリアル

列に注目してください。

以上がGo 言語の依存関係管理の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。