Dans Go, l'importation de packages locaux peut présenter des défis lorsque le projet réside dans GOPATH/src annuaire. Cette question explore pourquoi l'importation de packages locaux peut échouer à partir du répertoire GOPATH/src mais réussir lorsqu'elle est déplacée vers le répertoire personnel.
Cause du problème
L'erreur rencontrée lorsque la tentative d'importation d'un package local depuis GOPATH/src est principalement due à l'utilisation de chemins d'importation relatifs. Les chemins d'importation relatifs fournissent un moyen pratique de faire référence aux packages au sein du projet, mais ne sont pas entièrement pris en charge par les commandes Go build et install.
Solution
Pour résoudre ce problème , il est recommandé d'éviter d'utiliser des chemins d'importation relatifs et de suivre plutôt les directives du langage de programmation Go pour structurer le code. Cela implique d'organiser votre code dans une hiérarchie de packages, chacun avec son propre répertoire, et d'utiliser des chemins d'importation absolus pour référencer ces packages.
Exemple
Considérez le projet suivant structure :
/usr/local/go/src/myproject - main.go - models - product.go
Dans cette structure, le fichier main.go peut importer le package models en utilisant un chemin d'importation absolu :
package main import ( "myproject/models" "fmt" "github.com/gin-gonic/gin" )
Notes supplémentaires
En suivant ces directives, vous pouvez importer avec succès des packages locaux dans Go, quel que soit leur emplacement dans le répertoire GOPATH.
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!