多くの言語には、Java の Maven や JavaScript の npm など、プロジェクト内の依存関係パッケージやサードパーティ ライブラリを管理するための特別なツールやライブラリがあります。
しかし、go の場合、v1.1 より前には組み込みの go モジュール ツールはありません。プロジェクト ファイルは GOPATH/src で実行する必要があります。この作業方法は比較的必須であり、効率が低下する可能性があります。 . .
v1.1 以降、go には組み込みの go mod ツールが提供され、go mod を通じて go 依存関係パッケージを問題なく管理およびアップグレードできます。
以下は、go 入門チュートリアル 列からの go mod の紹介です。
Go mod の一般的なコマンド
download download modules to local cache edit edit go.mod from tools or scripts graph print module requirement graph init initialize new module in current directory tidy add missing and remove unused modules vendor make vendored copy of dependencies verify verify dependencies have expected content why explain why packages or modules are needed
新しいプロジェクトで go mod を構成する
GOPATH の外に新しいディレクトリを作成し、go mod init xxx を使用して初期化しますgo.mod ファイル。 go.mod は、現在のプロジェクトの依存ライブラリの名前とバージョンを提供します。
新しい main.go を作成し、コードを追加します。
package main import "github.com/astaxie/beego" func main() { beego.Run() }
vscode エディターを使用している場合、go 拡張はファイル内の依存関係を自動的に開いてダウンロードするか、 go run main.go を実行して依存関係パッケージをダウンロードします。
この時点で go.mod のコンテンツが更新されました
module go-mod go 1.13 require github.com/astaxie/beego v1.12.0
同時に、プロジェクト内に go.sum ファイルが生成されます。このファイルには現在の依存関係ツリーが記録されます
golang.org の場合、依存関係パッケージは
beego プロジェクトが go mod を使用します
beego プロジェクトがbee ツールは GOPATH の下に生成されます。beego は次のようにする必要があります。プロジェクトは GOPATH の外に移動され、go mod init xxx が生成されて go.mod ファイルが生成されます。
go 言語の知識について詳しくは、php 中国語 Web サイトの go 言語チュートリアル 列に注目してください。
以上がgo mod モジュール性の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。