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() { }
Avec cette structure de répertoires :
- one - entities - bar - file.go
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() { }
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" )
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) }
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!