Maison >développement back-end >Golang >Comment le module utilise-t-il les packages locaux (avec exemples)

Comment le module utilise-t-il les packages locaux (avec exemples)

藏色散人
藏色散人avant
2021-11-26 16:02:442090parcourir

Cet article est introduit par la colonne tutoriel go language pour présenter comment utiliser les packages locaux avec le module go. J'espère qu'il sera utile aux amis qui en ont besoin !

L'utilisation du module go est très simple

  1. Initialisez go.mod

    go mod init
  2. Organisez les packages dépendants

    go mod tidy
  3. Si vous souhaitez mettre en cache dans le répertoire des fournisseurs

    go mod vendor

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/goroomrrreee
Voici path/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.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer