Maison > développement back-end > Golang > Comment puis-je définir un GOPATH spécifique au projet dans Go ?

Comment puis-je définir un GOPATH spécifique au projet dans Go ?

Mary-Kate Olsen
Libérer: 2024-11-16 16:33:03
original
968 Les gens l'ont consulté

How Can I Define a Project-Specific GOPATH in Go?

Définition GOPATH spécifique au projet

Problème :

Lorsque vous travaillez sur plusieurs projets Go, créer un GOPATH unique pour tous les projets peut entraîner des problèmes de gestion. Les binaires et les bibliothèques tierces deviennent indépendantes du projet, ce qui rend difficile la maintenance de plusieurs versions de bibliothèques.

Solution :

Il existe plusieurs approches pour définir GOPATH sur une base individuelle. -base du projet :

Fonction Bash Shell :

Pour les environnements Linux/Unix, une fonction bash shell peut être créée pour remplacer la commande cd intégrée. La fonction recherche un fichier .gopath dans le répertoire actuel et ses parents, définissant le GOPATH en conséquence. Exemple de code :

cd () {
    builtin cd "$@"
    cdir=$PWD
    while [ "$cdir" != "/" ]; do
        if [ -e "$cdir/.gopath" ]; then
            export GOPATH=$cdir
            break
        fi
        cdir=$(dirname "$cdir")
    done
}
Copier après la connexion

Visual Studio Code :

Avec l'extension "Go for Visual Studio Code", VSCode vous permet de configurer un GOPATH global pour les outils tout en en déduisant également un GOPATH local pour chaque projet. Le GOPATH local est défini sur le dossier parent du répertoire src, ce qui le rend spécifique au projet.

Modules GOPATH :

Depuis Go 1.11, les modules fournissent un mécanisme facultatif pour un flux de travail basé sur un projet. Cette approche élimine le besoin de paramètres GOPATH manuels et utilise une approche plus granulaire pour gérer les dépendances du projet.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal