Heim  >  Artikel  >  Backend-Entwicklung  >  Lösung für den Fehler beim Herunterladen des Pakets go get golang.org/x in China

Lösung für den Fehler beim Herunterladen des Pakets go get golang.org/x in China

藏色散人
藏色散人nach vorne
2020-10-14 16:25:312786Durchsuche

GOPROXY-UmgebungsvariableLösung für den Fehler beim Herunterladen des Pakets go get golang.org/x in China

Wir wissen, dass ab der Version Go 1.11 das Paketabhängigkeitsverwaltungstool go module offiziell unterstützt wird. Tatsächlich wurde auch die Umgebungsvariable GOPROXY hinzugefügt. Wenn diese Variable festgelegt ist, wird der Quellcode über die durch diese Umgebungsvariable festgelegte Proxy-Adresse heruntergeladen, anstatt wie zuvor direkt aus der Codebibliothek herunterzuladen. Dies ist zweifellos die größte gute Nachricht für Entwickler wie uns, die keinen wissenschaftlichen Zugang zum Internet haben. Noch erfreulicher ist, dass das Open-Source-Projekt goproxy.io (https://github.com/goproxyio/goproxy) uns dabei hilft, das zu erreichen, was wir wollen. Dieses Projekt ermöglicht es Entwicklern, mit einem Klick ihren eigenen GOPROXY-Proxy-Dienst zu erstellen. Gleichzeitig wird auch ein öffentlicher Proxy-Dienst https://goproxy.io bereitgestellt. Wir müssen nur diese Umgebungsvariable festlegen, um das blockierte Quellcodepaket normal herunterzuladen:

export GOPROXY=https://goproxy.io
Allerdings

erfordert Abhängigkeiten in der Funktion go module

. MODULE kann über export GO111MODULE=on aktiviert werden. Go 1.11 版本开始,官方支持了 go module 包依赖管理工具。
其实还新增了 GOPROXY 环境变量。如果设置了该变量,下载源代码时将会通过这个环境变量设置的代理地址,而不再是以前的直接从代码库下载。这无疑对我等无法科学上网的开发良民来说是最大的福音。
更可喜的是,goproxy.io (https://github.com/goproxyio/goproxy)这个开源项目帮我们实现好了我们想要的。该项目允许开发者一键构建自己的 GOPROXY 代理服务。同时,也提供了公用的代理服务 https://goproxy.io,我们只需设置该环境变量即可正常下载被墙的源码包了:

$env:GOPROXY = "https://goproxy.io"

不过,需要依赖于 go module 功能。可通过 export GO111MODULE=on 开启 MODULE。
如果项目不在 GOPATH 中,则无法使用 go get ...,但可以使用 go mod ... 相关命令。
也可以通过置空这个环境变量来关闭,export GOPROXY=

对于 Windows 用户,可以在 PowerShell 中设置:

go env -w GOPROXY=https://goproxy.cn,https://gocenter.io,https://goproxy.io,direct

最后,我们当然推荐使用 GOPROXYWenn sich das Projekt nicht in GOPATH befindet, können Sie go get... nicht verwenden, aber Sie können go mod... verwandte Befehle verwenden . Es kann auch deaktiviert werden, indem diese Umgebungsvariable leer gesetzt wird: export GOPROXY=.

Für Windows-Benutzer können Sie es in PowerShell festlegen:

rrreeeAbschließend empfehlen wir auf jeden Fall die Verwendung der Umgebungsvariablenlösung GOPROXY, vorausgesetzt, dass Go-Version > 1.11.

Erläuterung

Dieser Artikel ist nicht original, er hat mich etwa drei Tage lang gestört (zu diesem Zeitpunkt arbeite ich nur nachts am Go und habe tagsüber andere Jobs). Ich habe über Google einen Beitrag im Internet gefunden, der wie folgt lautet: Nach der Konfiguration von GOPROXY werden die relevanten Abhängigkeiten erfolgreich heruntergeladen. Der Grund, warum ich den Inhalt hier poste, ist, dass die Seite in China möglicherweise nicht zugänglich ist ... Der ursprüngliche Beitrag enthält mehr als eine Methode, aber diese Methoden sind in inländischen Beiträgen aufgetaucht, und ich habe nicht die einzige Lösung gefunden Habe es noch nicht gefunden. Ursprüngliche Adresse: One-Click-Lösung, um den Paketfehler von golang.org/x zu erhalten (https://shockerli.net/post/go-get-golang-org-x-solution/)

Vielen Dank an die Persönlichkeit, die vorne hereinkam (https://shockerli.net/about/)


Wenn das Paket immer noch nicht heruntergeladen werden kann, führt die Konsole die folgende Anweisung aus:

rrreee🎜🎜                         🎜                                  🎜🎜

Das obige ist der detaillierte Inhalt vonLösung für den Fehler beim Herunterladen des Pakets go get golang.org/x in China. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:learnku.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen