Maison > développement back-end > Golang > le corps du texte

Comment importer des sous-packages dans Go : que faire lorsque vous obtenez l'erreur « No Go Files » ?

DDD
Libérer: 2024-11-18 19:29:02
original
238 Les gens l'ont consulté

How to Import Subpackages in Go:  What to Do When You Get the

Importation de sous-packages avec Go : résolution de l'erreur "No Go Files"

Dans Go, l'importation de sous-packages en référençant leur répertoire parent n'est pas directement soutenu. Cependant, il existe d'autres approches pour résoudre le message d'erreur courant « aucun fichier Go dans [répertoire parent] ».

Considérez le scénario suivant :

package main

import "one/entities/bar"

func main() {

}
Copier après la connexion

Avec cette structure de répertoires :

- one
   - entities
      - bar
         - file.go
Copier après la connexion

Lors de la tentative de construction du projet à l'aide de go install main, une erreur apparaît indiquant l'absence de fichiers Go dans le répertoire du sous-package. Pour résoudre ce problème, vous ne pouvez pas importer de sous-packages à l'aide d'une syntaxe générique, car l'instruction d'importation nécessite un nom ou un chemin de package explicite.

Pour importer correctement les sous-packages, vous devez importer chaque sous-package individuellement. Par exemple, pour importer le sous-package bar, vous devez modifier le fichier main.go comme suit :

package main

import (
    "one/entities/bar/file1"
    "one/entities/bar/file2"
)

func main() {

}
Copier après la connexion

Vous pouvez également utiliser un chemin d'importation personnalisé pour regrouper les sous-packages associés sous une seule instruction d'importation. Cela peut améliorer la lisibilité et réduire le nombre de lignes d'importation. Pour y parvenir, créez un répertoire nommé import dans le répertoire one/entities et placez-y un fichier nommé init.go. Dans le fichier init.go, définissez un chemin d'importation personnalisé et importez les sous-packages souhaités :

// import/init.go
package entities

import (
    _ "one/entities/bar/file1"
    _ "one/entities/bar/file2"
)
Copier après la connexion

Ensuite, dans votre fichier main.go, importez le package d'entités en utilisant le chemin d'importation personnalisé :

// main.go
package main

import (
    "log"
    "one/entities"
)

func main() {
    v := entities.Bar_file1.Get.Basic.Req.Headers{}
    log.Fatal(v)
}
Copier après la connexion

En suivant ces approches, vous pouvez importer correctement des sous-packages dans Go, en résolvant l'erreur « pas de fichiers Go » et en organisant vos importations pour une meilleure lisibilité du code.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal