Heim  >  Artikel  >  Backend-Entwicklung  >  Fehler bei der Kompilierung der Datei „cosmos-sdk/proto/bank/v1beta1/query.proto“.

Fehler bei der Kompilierung der Datei „cosmos-sdk/proto/bank/v1beta1/query.proto“.

王林
王林nach vorne
2024-02-09 10:00:201084Durchsuche

cosmos-sdk/proto/bank/v1beta1/query.proto 文件编译时错误

php-Editor Xigua hat beim Kompilieren mit der Datei cosmos-sdk/proto/bank/v1beta1/query.proto einen Fehler festgestellt. Diese Datei ist Teil von cosmos-sdk und dient der Abfrage bankbezogener Informationen. Der Fehler kann auftreten, weil ein Problem mit der Datei selbst vorliegt oder der Compiler falsch konfiguriert ist. Um dieses Problem zu beheben, müssen die Dateiinhalte und Compilereinstellungen sorgfältig überprüft werden, um sicherzustellen, dass sie den Anforderungen entsprechen. Gleichzeitig können Sie die Community oder Entwickler um Hilfe bitten, um diesen Kompilierungsfehler schneller zu beheben.

Frageninhalt

Nach der Installation des Protokolls und dem Speichern der Datei cosmos-sdk/proto/bank/v1beta1/query.proto zeigt diese Datei viele Fehler. Um die Fehler zu bestätigen, habe ich diesen Befehl protoc ausgeführt – go_out=. query.proto

Hier sind die Problemdetails:

saiful@saiful-Inspiron-3542:~/Desktop/TestCosmos/cosmos-sdk/proto/cosmos/bank/v1beta1$ protoc --go_out=. query.proto
cosmos/base/query/v1beta1/pagination.proto: File not found.
gogoproto/gogo.proto: File not found.
google/api/annotations.proto: File not found.
cosmos/base/v1beta1/coin.proto: File not found.
cosmos/bank/v1beta1/bank.proto: File not found.
cosmos_proto/cosmos.proto: File not found.
cosmos/query/v1/query.proto: File not found.
amino/amino.proto: File not found.
query.proto:4:1: Import "cosmos/base/query/v1beta1/pagination.proto" was not found or had errors.
query.proto:5:1: Import "gogoproto/gogo.proto" was not found or had errors.
query.proto:6:1: Import "google/api/annotations.proto" was not found or had errors.
query.proto:7:1: Import "cosmos/base/v1beta1/coin.proto" was not found or had errors.
query.proto:8:1: Import "cosmos/bank/v1beta1/bank.proto" was not found or had errors.
query.proto:9:1: Import "cosmos_proto/cosmos.proto" was not found or had errors.
query.proto:10:1: Import "cosmos/query/v1/query.proto" was not found or had errors.
query.proto:11:1: Import "amino/amino.proto" was not found or had errors.
query.proto:135:3: "cosmos.base.v1beta1.Coin" is not defined.
query.proto:147:3: "cosmos.base.query.v1beta1.PageRequest" is not defined.
query.proto:159:12: "cosmos.base.v1beta1.Coin" is not defined.
query.proto:167:3: "cosmos.base.query.v1beta1.PageResponse" is not defined.
query.proto:182:3: "cosmos.base.query.v1beta1.PageRequest" is not defined.
query.proto:191:12: "cosmos.base.v1beta1.Coin" is not defined.
query.proto:199:3: "cosmos.base.query.v1beta1.PageResponse" is not defined.
query.proto:223:3: "cosmos.base.v1beta1.Coin" is not defined.
query.proto:235:3: "cosmos.base.query.v1beta1.PageRequest" is not defined.
query.proto:242:12: "cosmos.base.v1beta1.Coin" is not defined.
query.proto:252:3: "cosmos.base.query.v1beta1.PageResponse" is not defined.
query.proto:264:3: "cosmos.base.v1beta1.Coin" is not defined.
query.proto:273:3: "Params" is not defined.
query.proto:279:3: "cosmos.base.query.v1beta1.PageRequest" is not defined.
query.proto:286:12: "Metadata" is not defined.
query.proto:289:3: "cosmos.base.query.v1beta1.PageResponse" is not defined.
query.proto:302:3: "Metadata" is not defined.
query.proto:313:3: "cosmos.base.query.v1beta1.PageRequest" is not defined.
query.proto:326:3: "cosmos.base.v1beta1.Coin" is not defined.
query.proto:336:3: "cosmos.base.query.v1beta1.PageResponse" is not defined.
query.proto:347:3: "cosmos.base.query.v1beta1.PageRequest" is not defined.
query.proto:354:12: "SendEnabled" is not defined.
query.proto:357:3: "cosmos.base.query.v1beta1.PageResponse" is not defined.

Ich habe die Protokollversion 3.21.12 installiert und jede importierte Pfaddatei wird am richtigen Ort abgelegt, aber ich erhalte immer noch die Fehlermeldung. Ich habe auch verschiedene Cosmos-SDK-Versionen ausprobiert, aber das Problem ist bei mir immer noch das gleiche. Meine Erwartung ist, dass nach dem Ausführen des Befehls (protoc --go_out=.query.proto) Im Pfad cosmos-sdk/proto/bank/v1beta1 sollte es frei laufen. Fehler

Workaround

Ich hatte ein Problem im Zusammenhang mit demselben Problem im offiziellen Cosmos SDK-Github-Repository. Zwei Kerningenieure des Cosmos SDK-Teams schlugen mir vor, „buf“ anstelle von „protoc“ zu verwenden, um meinen Fehler zu beheben. Ich habe ihren Rat befolgt und das Problem erfolgreich gelöst.

Das ist der Link:

https://github.com/cosmos/cosmos-sdk/issues/16897  (closed)

Das obige ist der detaillierte Inhalt vonFehler bei der Kompilierung der Datei „cosmos-sdk/proto/bank/v1beta1/query.proto“.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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