Maison >développement back-end >Golang >Quelques problèmes avec l'importation de packages en langage Go

Quelques problèmes avec l'importation de packages en langage Go

尚
avant
2019-12-14 16:40:072171parcourir

Quelques problèmes avec l'importation de packages en langage Go

import

Go utilise les packages comme unité de base pour organiser le code source, toute la visibilité de la syntaxe est définie au niveau niveau du paquet. Sous le même package, il peut y avoir de nombreux fichiers différents, à condition que chaque fichier appartienne au même nom de package.

La première ligne de chaque fichier de code source doit définir à quel package il appartient via la syntaxe suivante,

package xxx

Ensuite, il s'agit du package standard ou du package tiers utilisé pour importer le code source fichier, c'est-à-dire

import (
    "a/b/c"
    "fmt"
)

La bibliothèque standard sera recherchée à partir du répertoire d'installation GO, et la bibliothèque tierce sera recherchée à partir du $GOPATH défini par le développeur. Lorsque ni l’un ni l’autre n’est trouvé, le compilateur signalera une erreur. Lors de l'utilisation de packages tiers, lorsque le code source et .a sont tous deux installés, le compilateur établit un lien vers le code source.

Remarque : le dernier c de a/b/c dans l'instruction ci-dessus est le nom du répertoire, pas le nom du package.

Lors de l'appel d'une méthode dans un fichier, utilisez le format suivant :

package.Methodxxx()

Le package de plusieurs fichiers dans le même dossier est généralement défini comme le nom du dossier, mais il existe des exceptions. Par exemple, dans le châtaignier ci-dessus, le package de tous les fichiers sous le fichier c est défini comme fux. Ensuite, lors de l'appel de la méthode des fichiers de ce dossier, vous ne pouvez utiliser que fux.Methodxxx() au lieu de c..Methodxxx()

<.> a non- Le package principal générera un fichier .a après compilation (généré dans le répertoire temporaire, sauf si vous utilisez go install pour l'installer sous

ou $GOROOT, vous ne verrez pas .a), ce qui est utilisé pour la liaison ultérieure du programme exécutable. $GOPATH

fournisseur

Go a ajouté la prise en charge des fournisseurs pour la gestion des packages dans la version 1.5. La version 1.5 doit définir

pour prendre en charge cette fonctionnalité, et la version 1.6 l'utilise comme configuration de paramètre par défaut. Les règles suivantes pour les chemins d'importation de packages contenant des répertoires de fournisseurs sont à peu près les suivantes. GO15VENDOREXPERIMENT="1"

├── d
    ├── mypkg
    |     └── main.go
    └── vendor
          └── q
              ├── q.go

Lors de l'importation de q dans la structure de répertoires ci-dessus dans main.go, il effectuera d'abord une recherche dans le répertoire du fournisseur s'il ne peut pas être trouvé, il effectuera une recherche dans le répertoire $GOPATH. , le compilateur Une erreur a été signalée.

Pour plus de connaissances sur le langage go, veuillez prêter attention à la colonne

tutoriel sur le langage go.

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
Article précédent:Comment voir la pile de GolangArticle suivant:Comment voir la pile de Golang