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

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

Barbara Streisand
Barbara StreisandOriginal
2024-12-04 17:30:121080Durchsuche

How to Fix the

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

Beim Versuch, Code für eine gRPC-Anwendung in Go zu generieren , können Benutzer auf den Fehler „protoc-gen-go: Programm nicht gefunden oder nicht ausführbar“ stoßen. Dieses Problem entsteht, weil das Protoc-Gen-Go-Plugin, eine entscheidende Komponente für die Codegenerierung, entweder fehlt oder nicht zugänglich ist.

Lösung:

Für Go-Versionen 1.17 und oben sollten die folgenden Schritte das Problem beheben:

  1. Installationsmethode aktualisieren: Ab Go 1.17, die Verwendung von go get zur Installation ausführbarer Dateien ist veraltet. Verwenden Sie stattdessen go install.
  2. Umgebungsvariablen festlegen: Konfigurieren Sie die Umgebungsvariablen GOPATH und PATH als folgt:

    • ~/.bashrc

      export GOPATH=$HOME/go
      export PATH=$PATH:$GOPATH/bin
  3. Plugins installieren : Installieren Sie die Plugins protoc-gen-go und protoc-gen-go-grpc mit:

    go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
    
    go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
  4. Code generieren: Sobald die Plugins installiert sind, verwenden Sie den folgenden Befehl, um den Code zu generieren:

    protoc --go-grpc_out=. *.proto

Wenn Sie diese Schritte befolgen, sollten Sie in der Lage sein, erfolgreich Code für Ihre gRPC-Anwendung in Go zu generieren. Stellen Sie sicher, dass Ihre Umgebungsvariablen richtig eingestellt sind und die erforderlichen Plugins installiert sind.

Das obige ist der detaillierte Inhalt vonWie behebt man den Fehler „protoc-gen-go: Programm nicht gefunden oder ist nicht ausführbar' in Go?. 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