Maison > développement back-end > Golang > Explication détaillée du script d'installation en un clic de golang.org/x

Explication détaillée du script d'installation en un clic de golang.org/x

藏色散人
Libérer: 2021-02-28 16:21:26
avant
3250 Les gens l'ont consulté

Ce qui suit est une introduction au script d'installation en un clic de golang.org/x de la colonne du didacticiel golang. J'espère qu'il sera utile aux amis dans le besoin !

golang.org/x script d'installation en un clic

Contexte

En raison de divers problèmes, go get est utilisé pour installer golang package officiel en Chine Cela peut échouer. Par exemple, lorsque j'ai moi-même installé collisiondermain, l'erreur suivante s'est produite :

$ go get collidermain
package golang.org/x/net/websocket: unrecognized import path 
"golang.org/x/net/websocket" (https fetch: Get https://golang.org/x/net/websocket?go-get=1: 
dial tcp 216.239.37.1:443: i/o timeout)
Copier après la connexion

Principe

En fait, golang a établi une bibliothèque miroir sur github, telle que https://github.com/golang/net est https://golang.org/x/net Bibliothèque miroir

Pour obtenir le package golang.org/x/net, vous n'avez besoin que des étapes suivantes :

mkdir -p $GOPATH/src/golang.org/x
cd $GOPATH/src/golang.org/x
git clone https://github.com/golang/net.git
Copier après la connexion

Cette méthode peut être utilisée pour obtenir d'autres packages sous golang.org/x.

J'ai donc écrit un script bash ici pour installer le package golang.org/x en un seul clic

  • Utilisateur Windows git-bash pour exécuter le script gox.sh
  • *Les utilisateurs Unix chmod +x gox.sh ajoutent d'abord des autorisations exécutables. Utilisez ./gox.sh pour effectuer une installation en un clic
#!/usr/bin/env bash
#为了兼容windows下的bash
cd $GOPATH;
#创建 $GOPATH/src/golang.org/x 目录
mkdir -p $GOPATH/src/golang.org/x;

echo "已经安装的golang.org/x package";
ls;
echo "下面一行 for in 中包的名字您可以自己来定义"
for name in "glog" "image" "perf" "snappy" "term" "sync" "winstrap" "cwg" "leveldb" "text" "net" "build" "protobuf" "dep" "sys" "crypto" "gddo" "tools" "scratch" "proposal" "mock" "oauth2" "freetype" "debug" "mobile" "gofrontend" "lint" "appengine" "geo" "review" "arch" "vgo" "exp" "time";do
   cd $GOPATH/src/golang.org/x;
   if [ -d "$name" ]
   then
     cd $name;
     echo $name "包已经存在,使用git pull来更新源码";
     git pull;
   else
     git_url="https://github.com/golang/${name}.git";
     echo "开始clone golang.org/x 在github.com上的镜像代码:${git_url}";
     git clone --depth 1 "$git_url";
     cd $name;
   fi
   #go install;
done
Copier après la connexion

Notez que

devrait également être git clone pendant le processus de en exécutant le script, vous devez fréquemment saisir votre compte GitHub.

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!

Étiquettes associées:
source:learnku.com
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