L'utilisation du module go est très simple
-
Initialisez go.mod
go mod init
Copier après la connexion -
Organisez les packages dépendants
go mod tidy
Copier après la connexion -
Si vous souhaitez mettre en cache dans le répertoire des fournisseurs
go mod vendor
Copier après la connexion
Exécutez la commande Après cela, les dépendances seront automatiquement prises en charge.
Cependant, si nous développons le package localement et n'avons pas d'entrepôt distant, comment pouvons-nous résoudre le problème de dépendance du package local
Utiliser replace pour ? remplacez le package distant par le service de package local
Heureusement Oui, le module go fournit une autre solution, remplacer Comment utiliser ce remplacement
Jetons d'abord un coup d'œil à un fichier mod de base
module GoRoomDemo go 1.12 require ( github.com/gin-gonic/gin v1.3.0 github.com/gohouse/goroom v0.0.0-20190327052827-9ab674039336 github.com/golang/protobuf v1.3.1 // indirect github.com/gomodule/redigo v2.0.0+incompatible github.com/mattn/go-sqlite3 v1.10.0 github.com/stretchr/testify v1.3.0 // indirect golang.org/x/net v0.0.0-20190320064053-1272bf9dcd53 // indirect )
Il s'agit d'une simple dépendance du <. code>GoRoom framework Package, si je veux utiliser le goroom
local, j'ai juste besoin d'utiliser replaceGoRoom
框架的依赖关系包, 如果我想使用本地的goroom
, 只需要使用replace即可
module GoRoomDemo go 1.12 require ( github.com/gin-gonic/gin v1.3.0 github.com/gohouse/goroom v0.0.0-20190327052827-9ab674039336 github.com/golang/protobuf v1.3.1 // indirect github.com/gomodule/redigo v2.0.0+incompatible github.com/mattn/go-sqlite3 v1.10.0 github.com/stretchr/testify v1.3.0 // indirect golang.org/x/net v0.0.0-20190320064053-1272bf9dcd53 // indirect ) replace github.com/gohouse/goroom => /path/to/go/src/github.com/gohouse/goroom
这里的path/to/go/src/github.com/gohouse/goroom
rrreeeVoicipath/to/go/src/ github.com/gohouse/goroom code> est le chemin du package local
De cette façon, nous pouvons volontiers utiliser le répertoire local.