Heim >Backend-Entwicklung >Golang >Wie behebt man den Fehler „protoc-gen-go: Programm nicht gefunden oder ist nicht ausführbar' in Go gRPC?

Wie behebt man den Fehler „protoc-gen-go: Programm nicht gefunden oder ist nicht ausführbar' in Go gRPC?

Barbara Streisand
Barbara StreisandOriginal
2024-12-09 22:27:24576Durchsuche

How to Fix the

Behebung des Fehlers „protoc-gen-go: Programm nicht gefunden oder nicht ausführbar“ in Go gRPC

Beim Versuch, Go-Code für eine gRPC-Anwendung zu generieren, haben Sie Möglicherweise tritt der Fehler „protoc-gen-go: Programm nicht gefunden oder nicht ausführbar“ auf. Dieses Problem kann aufgrund der Verwendung eines veralteten Ansatzes in Go 1.17 und späteren Versionen auftreten.

Lösung für Go 1.17

In Go 1.17 wurde die Installation ausführbarer Dateien mit go get durchgeführt veraltet zugunsten von go install. Um diesen Fehler für Go 1.17 und spätere Versionen zu beheben, führen Sie die folgenden Schritte aus:

  1. Aktualisieren Sie Ihre .bashrc- oder .zshrc-Datei:

    export GOPATH=$HOME/go
    export PATH=$PATH:$GOPATH/bin
  2. Installieren Sie protoc-gen-go und protoc-gen-go-grpc Plugins:

    go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
    go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest

    Dadurch werden die neuesten Versionen der erforderlichen Plugins heruntergeladen und installiert.

  3. Generieren Sie den Go-Code:

    protoc --go-grpc_out=. *.proto

    Dadurch wird der Go-Code generiert, der für Ihren gRPC benötigt wird Anwendung.

Zusätzliche Hinweise:

  • Stellen Sie sicher, dass der Protokoll-Compiler installiert und in Ihrem PATH verfügbar ist.
  • Starten Sie Ihr Terminal oder Ihre Befehlszeile neu, nachdem Sie Änderungen an Ihrer .bashrc- oder .zshrc-Datei vorgenommen haben Datei.
  • Die aktuellsten Informationen zur Installation und Verwendung dieser Plugins finden Sie in der offiziellen Go-Dokumentation.

Das obige ist der detaillierte Inhalt vonWie behebt man den Fehler „protoc-gen-go: Programm nicht gefunden oder ist nicht ausführbar' in Go gRPC?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn