go version
)?$ go-Version go version go1.13.3 linux/amd64
ja
go env
)?go env
Ausgabe
$ gehen env
GO111MODULE=""
GOARCH="amd64"
GOBIN="/opt/DEVOPS/SDK/golang/go_projects/bin"
GOCACHE="/home/alessiosavi/.cache/go-build"
GOENV="/home/alessiosavi/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/opt/DEVOPS/SDK/golang/go_projects"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direkt"
GOROOT="/opt/DEVOPS/SDK/golang/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/opt/DEVOPS/SDK/golang/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build891034950=/tmp/go-build -gno-record-gcc-switches"
Ich versuche, ein benutzerdefiniertes Golang-Modul zu importieren, das keine anderen Abhängigkeiten enthält (go.mod enthält nur den Namen module
und die Version go
). Leider erhalte ich 410 gone
wenn ich versuche, das Modul in ein anderes Projekt einzubinden.
Das Modul kann mit der Version v0.0.8 importiert werden, jedoch nicht mit >v0.0.9
Aufgrund der go.mod-Datei ist es nicht möglich, auf play.golang.org
zu replizieren, stattdessen habe ich dafür ein neues Repository erstellt: https://github.com/alessiosavi/test
HINWEIS: Wenn Sie die Modulversion auf v0.0.8 ändern, wird es funktionieren
Ich erwarte, dass das Importieren des Moduls in go.mod (erfordert github.com/alessiosavi/GoGPUtils v0.0.10
) und ein go clean
ausführen, kann das Modul unter dem Code verwendet werden
Ich erhalte einen Fehler:
export GO111MODULE=on
export GOPROXY=direct
go get -v -u github.com/alessiosavi/[email protected]
go: downloading github.com/alessiosavi/GoGPUtils v0.0.9
verifying github.com/alessiosavi/[email protected]: github.com/alessiosavi/[email protected]: reading https://sum.golang.org/lookup/github.com/alessiosavi/[email protected]: 410 Gone
Beobachten Sie: https://proxy.golang.org/YOUR_MODULE_GITH_URL/@v/VERSION.info
Scheint, dass https://proxy.golang.org/github.com/alessiosavi/!go!g!p!utils/ @v/v0.0.9.info
In meinem Fall scheint der Fehler mit zwei Dateien zusammenzuhängen, die sich nur für die Groß-/Kleinschreibung im Namen unterscheiden.
Das Problem ist https://github.com/alessiosavi/GoGPUtils/issues/2.
Um eine vollständigere und hilfreichere Fehlermeldung zu erhalten, sollten Sie die URL aufrufen, die in der erhaltenen Fehlermeldung 410 zurückgegeben hat:
https://sum.golang.org/lookup/github.com/alessiosavi/!go!g!p!utils @v0.0.9
Es sagt:
not found: unzip /tmp/gopath/pkg/mod/cache/download/github.com/alessiosavi/!go!g!p!utils/@v/v0.0.9.zip: case-insensitive file name collision: "tests/fileutils/FindMe.txt" and "tests/fileutils/findme.txt"
Oder legen Sie GOSUMDB=off
zusätzlich zu GOPROXY=direct
:
$ export GO111MODULE=on
$ export GOPROXY=direct
$ export GOSUMDB=off
$ go get -v -u github.com/alessiosavi/[email protected]
go: finding github.com/alessiosavi/GoGPUtils v0.0.9
go: downloading github.com/alessiosavi/GoGPUtils v0.0.9
go: extracting github.com/alessiosavi/GoGPUtils v0.0.9
-> unzip /var/folders/zb/5p8cwfhj29gf_m8vdy8ylmlr00jwcj/T/tmp.6HERCDpw/pkg/mod/cache/download/github.com/alessiosavi/!go!g!p!utils/@v/v0.0.9.zip: case-insensitive file name collision: "tests/fileutils/FindMe.txt" and "tests/fileutils/findme.txt"
go get github.com/alessiosavi/[email protected]: unzip /var/folders/zb/5p8cwfhj29gf_m8vdy8ylmlr00jwcj/T/tmp.6HERCDpw/pkg/mod/cache/download/github.com/alessiosavi/!go!g!p!utils/@v/v0.0.9.zip: case-insensitive file name collision: "tests/fileutils/FindMe.txt" and "tests/fileutils/findme.txt"
Wie immer, ein anderer Tag, ein weiteres Problem von @dmitshur gelöst. Danke für die Mühe (:
Eine weitere Go-Version, eine weitere ENV-Variable, die Sie in Dockerfiles berücksichtigen und einstellen müssen 🤣
Im Wesentlichen wie @dmitshur richtig herausgestellt hat:
export GOSUMDB=off
Hat geholfen.
Dieser Thread hat mich gerettet. Danke schön.
Go-Tools könnten wirklich etwas aufgefrischte Fehlermeldungen gebrauchen. Ich war wirklich verloren mit einer Nachricht wie unten. Ich weiß kaum etwas über die neuen modulbezogenen Entwicklungen (außer dass ich die Absicht lobe!), und die undurchdringlichen Fehlermeldungen machen die Migration wirklich schwierig.
go: ghe.internalrepo.co.jp/project/[email protected]/go.mod: verifying module: ghe.internalrepo.co.jp/project/[email protected]/go.mod: reading https://sum.golang.org/lookup/ghe.internalrepo.co.jp/project/[email protected]: 410 Gone
server response: not found: ghe.internalrepo.co.jp/project/[email protected]: unrecognized import path "ghe.internalrepo.co.jp/project/our_project": https fetch: Get "https://ghe.internalrepo.co.jp/project/our_project?go-get=1": dial tcp 123.123.123.123:443: connect: connection refused
Ah, um noch ein paar Hinweise für Leute zu geben, die diesen Thread finden: export GOSUMDB=off
geholfen, das Problem zu beheben, aber ich habe zumindest in meinem Fall das "richtige" (in dem Sinne, dass es nicht berührt, wie öffentliche Abhängigkeiten auf die zugegriffen wird) Fix war, export GOPRIVATE=ghe.internalrepo.co.jp
. Es verblüfft mich jedoch immer noch, dass es nicht versuchen würde, direkt auf das Repository zuzugreifen, nachdem es mit GOSUMDB fehlgeschlagen war, sondern sofort mit einer kryptischen Nachricht scheiterte. Für Go-Entwickler: Die Nachricht sieht viel kryptischer aus, wenn Sie die Konzepte nicht kennen, also machen Sie bitte einige UX-Arbeiten!
Hilfreichster Kommentar
Das Problem ist https://github.com/alessiosavi/GoGPUtils/issues/2.
Um eine vollständigere und hilfreichere Fehlermeldung zu erhalten, sollten Sie die URL aufrufen, die in der erhaltenen Fehlermeldung 410 zurückgegeben hat:
https://sum.golang.org/lookup/github.com/alessiosavi/!go!g!p!utils @v0.0.9
Es sagt:
Oder legen Sie
GOSUMDB=off
zusätzlich zuGOPROXY=direct
: