Déballer le SDK Google Cloud et sa relation avec GOPATH
La configuration de Go App Engine sur macOS peut être une tâche difficile. L'une des questions qui se pose est de savoir où le SDK Google Cloud doit être stocké et quelle doit être la valeur de GOPATH.
Emplacement du SDK Google Cloud
Contrairement à question initiale, le SDK Google Cloud ne doit être placé ni dans $GOROOT ni dans $GOPATH. Au lieu de cela, il doit être décompressé directement dans votre répertoire $HOME et le programme d'installation exécuté. Si nécessaire, ajoutez-le à votre $PATH en ajoutant la ligne suivante à votre .bash_profile :
export PATH=$HOME/google-cloud-sdk:$PATH
Configuration de GOPATH
Vous ne devez pas modifier votre $GOPATH pour inclure le répertoire src dans google-cloud-sdk/platform/google_appengine/goroot/src. Cela peut entraîner des erreurs. Au lieu de cela, conservez votre installation $GOPATH normale. Le SDK App Engine pour Go utilise automatiquement les sources de ce répertoire.
Évitez de modifier GOROOT
Sauf lors de la compilation d'une nouvelle version de Go à partir des sources, vous devez vous abstenir de modifier $GOROOT. Il définit automatiquement la valeur $GOROOT appropriée. Si vous rencontrez une installation corrompue, supprimez le SDK cloud, nettoyez toutes les références de chemin et effectuez une nouvelle installation de Go et du SDK Google Cloud.
Processus de développement
Lors du développement pour App Engine, vos sources Go résident dans votre $GOPATH habituel. Ne les placez pas dans le dossier google-cloud-sdk. Pour exécuter dev_appserver localement, accédez au chemin de votre projet et exécutez :
dev_appserver.py [path-to-source]
où [path-to-source] contient votre code et app.yaml.
Structure des dossiers
Pour plus de clarté, voici une représentation simplifiée de la structure de dossiers recommandée :
$GOPATH = $HOME/go ├── src │ ├── myproject │ │ └── main.go │ │ └── app.yaml
Google SDK Cloud :
$HOME/google-cloud-sdk ├── bin ├── ... ├── platform │ └── google_appengine │ └── ...
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!